У меня есть гибкий пользовательский интерфейс MXML, который создает набор переключателей с использованием компонента Repeater
:
<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>