我正在使用Flex3和它的新手。 我正在使用转发器来创建复选框。 我不希望垂直对齐所有复选框,因为它们有很多。 我想在2列中显示复选框以节省一些空间? 我可以对x和y属性做一些魔术。 但有没有简单的方法呢?
答案 0 :(得分:1)
一种方法是将一对CheckBox包装在HBox中并重复该操作。像这样:
<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var dp:ArrayCollection = new ArrayCollection([1, 2, 3, 4]);
[Bindable]
private var checkBoxLabels:ArrayCollection = new ArrayCollection([
"Red", "Blue",
"Green", "Yellow",
"Purple","Brown",
"Gray", "Black"]);
]]>
</mx:Script>
<mx:VBox>
<mx:Repeater id="myRep" dataProvider="{dp}">
<mx:HBox>
<mx:CheckBox label="{checkBoxLabels[myRep.currentIndex*2]}"/>
<mx:CheckBox label="{checkBoxLabels[myRep.currentIndex*2+1]}"/>
</mx:HBox>
</mx:Repeater>
</mx:VBox>
</mx:WindowedApplication>