我有一个使用该Repeater
组件构建一组单选按钮的 flex MXML UI:
<mx:Repeater id="radios"
dataProvider="{_lists.(@id == _question.single.@response_list).group.listItem}">
<mx:RadioButton groupName="responses"
label="{radios.currentItem.@text}"
data="{radios.currentItem.@level}"/>
</mx:Repeater>
我想要做的是让中继器中的组件——RadioButton
在这个例子中——根据一个属性的值来选择radios.currentItem
:如果值为currentItem
“foo”,例如,我想要一个Button
,或者如果这是“酒吧”我想要一个RadioButton
。是否可以在 MXML 组件中执行这种条件构造,或者我必须恢复到 ActionScript 来执行它吗?
我正在考虑这些方面的一些事情:
<mx:Repeater id="r" dataProvider="{list}">
<mx:If test="{r.currentItem.@type == 'radio'}">
<mx:RadioButton label="{r.currentItem.@text}" />
</mx:If>
<mx:If test="{r.currentItem.@type == 'specify'}">
<custom:Specify label="{r.currentItem.@text}" />
</mx:If>
</mx:Repeater>