我希望能够将多个孩子添加到群组中。
我想在“qItems”
中立即添加所有这些内容 <s:HGroup width="100%" height="100%">
<s:Group width="100" height="100%">
<s:TextInput width="100%" editable="false"/>
</s:Group>
<s:Group width="100%" height="100%">
<s:TextInput width="100%"/>
</s:Group>
</s:HGroup>
我只能通过一个孩子
<fx:Script>
<![CDATA[
protected function addNewGroup():void
{
var hg:HGroup = new HGroup();
hg.width=100 + "%";
hg.height=100 + "%";
qItems.addElement(hg);
}
]]>
</fx:Script>
<s:Button label="Add Item" click="addNewGroup()"/>
<s:VGroup id="qItems" width="100%" height="22"/>
我不知道如何一次添加多个项目。
由于
更新
到目前为止我有这个......寻找更好的方法
public var hg:HGroup;
public var g1:Group;
public var g2:Group;
public var g3:Group;
public var g4:Group;
public var g5:Group;
public var g6:Group;
public var ti1:TextInput;
public var ti2:TextInput;
public var ti3:TextInput;
public var ti4:TextInput;
public var ti5:TextInput;
public var ti6:TextInput;
protected function addNewGroup():void
{
hg = new HGroup();
hg.width=100 + "%";
hg.height=22;
g1 = new Group();
g1.width=100;
g1.height=100 + "%";
ti1 = new TextInput();
ti1.width=100 + "%";
ti1.editable=false;
g2 = new Group();
g2.width=100 + "%";
g2.height=100 + "%";
ti2 = new TextInput();
ti2.width=100 + "%";
g3 = new Group();
g3.width=100;
g3.height=100 + "%";
ti3 = new TextInput();
ti3.width=100 + "%";
g4 = new Group();
g4.width=100;
g4.height=100 + "%";
ti4 = new TextInput();
ti4.width=100 + "%";
g5 = new Group();
g5.width=100;
g5.height=100 + "%";
ti5 = new TextInput();
ti5.width=100 + "%";
g6 = new Group();
g6.width=100;
g6.height=100 + "%";
ti6 = new TextInput();
ti6.width=100 + "%";
qItems.addElement(hg);
hg.addElement(g1);
g1.addElement(ti1);
hg.addElement(g2);
g2.addElement(ti2);
hg.addElement(g3);
g3.addElement(ti3);
hg.addElement(g4);
g4.addElement(ti4);
hg.addElement(g5);
g5.addElement(ti5);
hg.addElement(g6);
g6.addElement(ti6);
答案 0 :(得分:1)
我采取的方法是将对象添加到数组集合中,然后通过该集合为每个循环执行a,并从循环中向父容器执行add元素。
例如:
for each (var visualElement:Object in CollectionOfObjects){
var newWrappingFormItem:WrappingFormItem = new WrappingFormItem();
newWrappingFormItem.maxLabelWidth = 100;
newWrappingFormItem.wrapLabel = true;
newWrappingFormItem.label = "Label Name";
newWrappingFormItem.addElement(visualElement);
parentContainer.addChild(newWrappingFormItem);
}
此示例使用包装表单Item,但您可以使用相同的逻辑为其他组件元素创建。