用到的MX标签:constraintColumns、ConstraintColumn、constraintRows、ConstraintRow
给大家说说前提情况:在做MXML布局时,要嵌套很多层级,这里面有很多问题:
1、嵌套太多层级会影响效率!
2、嵌套太多层级,代码的可读性、可维护性差!
3、嵌套太多层级是因为Canvas、Vbox、Hbox功能单一,不能满足需要,而不是必须要这样做。
好吧,来看一个MXML代码示例:
<mx:constraintColumns>
<mx:ConstraintColumn id="column1" width="250"/>
<mx:ConstraintColumn id="column2" width="100%"/>
</mx:constraintColumns>
<mx:constraintRows>
<mx:ConstraintRow id="row1" height="25"/>
<mx:ConstraintRow id="row2" height="25"/>
<mx:ConstraintRow id="row3" height="100%"/>
<mx:ConstraintRow id="row4" height="35"/>
</mx:constraintRows>
<mx:Button id="topMenuCvs" label="topMenuCvs" width="100%"
top="row1:0" bottom="row1:0"/>
<mx:Button id="topButtonCvs" label="topButtonCvs" width="100%"
top="row2:0" bottom="row2:0"/>
<mx:Button id="leftNavCvs" label="leftNavCvs" height="100%"
top="row3:0" bottom="row3:0" left="column1:0" right="column1:0"/>
<mx:Button id="leftMainCvs" label="leftMainCvs" height="100%"
top="row3:0" bottom="row3:0" left="column2:0" right="column2:0"/>
<mx:Button id="footCvs" label="footCvs" width="100%"
top="row4:0" bottom="row4:0"/>
</mx:Application>
效果图: