Сделайте так, чтобы искры ButtonBar действовали как mx ToggleButtonBar Flex 4

Привет всем, у меня есть код ниже, чтобы определить элемент управления панели кнопок в спарк:

<s:ButtonBar id="tabs" y="15" left="0" height="31" change="VideosMenuBar_changeHandler(event)">  
        <s:ArrayCollection>
            <fx:String>Latest Videos</fx:String>
            <fx:String>Last Week Videos</fx:String>
            <fx:String>Last Month Videos</fx:String>
        </s:ArrayCollection>
</s:ButtonBar>

и у меня есть несколько вопросов об этом:

1) как я могу заставить эту панель кнопок реагировать как mx ToggleButtonBar, то есть когда я нажимаю кнопку дважды, чтобы не потерять ее состояние, а сохранить ее и изменить только в случае нажатия другой кнопки?

2) Как определить по умолчанию нажатую кнопку?

3) и наконец, я применил готовый скин flex в моем приложении, и это дало моим кнопкам некоторые свойства при наведении курсора, выборе и т. Д., Как я могу определить свой собственный через новый скин на моих кнопках? Могу ли я определить новый свойства моей панели кнопок, чтобы на меня не влияли объявления, заявленные в скине, или мне нужно что-то изменить в этом скине и как это можно сделать?

Заранее большое спасибо за вашу помощь!

1 ответ

Решение
  1. В самом деле. requireSelection="истина"
  2. ButtonBar расширяет список, поэтому настройка свойства selectedIndex должна работать
  3. Я не совсем уверен, что вы имеете в виду, но вы можете изменить скины кнопок на панели кнопок с помощью css:

    s | ButtonBarButton {skin-class: ClassReference ("my.skin.class"); }

Или вы можете выбрать пользовательскую реализацию кнопки, создав собственную ButtonBarSkin для ссылки на ваши кнопки.

<fx:Declarations>
    <fx:Component id="firstButton">
        <you:MyLastButton />
    </fx:Component>

    <fx:Component id="middleButton" >
        <you:MyLastButton />
    </fx:Component>

    <fx:Component id="lastButton" >
        <you:MyLastButton />
    </fx:Component>
</fx:Declarations>

Взгляните на собственный ButtonBarSkin в Spark для хорошего примера и убедитесь, что эти кнопки как минимум реализуют IItemRenderer или просто расширяют ButtonBarButton

Другие вопросы по тегам