Styling the selected button on a Spark ButtonBar control in Flex 4

The following example shows how you can style the currently selected button on a Flex 4 Spark ButtonBar control by styling the various states on the Spark ButtonBarButton selector.

Full code after the jump.

The following example(s) require Flash Player 10 and the Adobe Flex 4 SDK. To download the Adobe Flash Builder 4 trial, see www.adobe.com/products/flex/. To download the latest nightly build of the Flex 4 SDK, see opensource.adobe.com/wiki/display/flexsdk/Download+Flex+4.

For more information on getting started with Flex 4 and Flash Builder 4, see the official Adobe Flex Team blog.

View MXML

<?xml version="1.0" encoding="utf-8"?>
<!-- http://blog.flexexamples.com/2009/02/15/styling-the-selected-button-on-an-fxbuttonbar-control-in-flex-gumbo/ -->
<s:Application name="Spark_ButtonBar_statesStyle_test"
        xmlns:fx="http://ns.adobe.com/mxml/2009"
        xmlns:s="library://ns.adobe.com/flex/spark"
        xmlns:mx="library://ns.adobe.com/flex/halo">
 
    <fx:Style>
        @namespace s "library://ns.adobe.com/flex/spark";
 
        s|ButtonBarButton:upAndSelected,
        s|ButtonBarButton:overAndSelected,
        s|ButtonBarButton:downAndSelected,
        s|ButtonBarButton:disabledAndSelected {
            baseColor: haloBlue;
        }
    </fx:Style>
 
    <s:ButtonBar id="btnBar"
            requireSelection="true"
            horizontalCenter="0" verticalCenter="0">
        <s:dataProvider>
            <s:ArrayList source="[Red,Orange,Yellow,Green,Blue]" />
        </s:dataProvider>
    </s:ButtonBar>
 
</s:Application>

This entry is based on a beta version of the Flex 4 SDK and therefore is very likely to change as development of the Flex SDK continues. The API can (and will) change causing examples to possibly not compile in newer versions of the Flex 4 SDK.

3 thoughts on “Styling the selected button on a Spark ButtonBar control in Flex 4

  1. These posts are alaways helpful; however, since the ‘fx’ prefix has been dropped, are ‘fx’ posts going to still be usefull?

  2. Alan,

    I think they’ll still be useful, just a bit more challenging to use since either you’ll have to know which new namespaces are needed and which prefixes aren’t, or I’ll have to undergo the massive task of updating all Fx* based examples and republish them once the API dust settles.

    Neither of which are ideal solutions, but I figure me writing on some new Gumbo topics is more interesting than me writing on Flex 3 topics. Maybe?

    Peter

Comments are closed.