package jp.njf { import feathers.controls.Button; import feathers.controls.ButtonGroup; import feathers.controls.text.TextFieldTextRenderer; import feathers.core.ITextRenderer; import feathers.data.ListCollection; import flash.text.TextFormat; import starling.display.Quad; import starling.display.Sprite; import starling.events.Event; /** * ... * @author */ public class ButtonGroupTest { public function ButtonGroupTest(baseSp:Sprite) { var group:ButtonGroup = new ButtonGroup(); baseSp.addChild(group); group.dataProvider = new ListCollection( [ { label: "One",id:1}, { label: "Two",id:2}, { label: "Three",id:3} ]); group.buttonFactory = function():Button { var button:Button = new Button(); button.defaultSkin = new Quad(StarlingWrapper.STAGE_WIDTH,40,0xaaffaa); button.downSkin = new Quad(StarlingWrapper.STAGE_WIDTH, 40, 0xffaaaa); button.labelFactory = function():ITextRenderer { var labelRenderer:TextFieldTextRenderer=new TextFieldTextRenderer(); //styles here labelRenderer.textFormat = new TextFormat(null, 32,0x0E0E0E); return labelRenderer; } return button; }; group.buttonInitializer = function( button:Button, item:Object ):void { if (item.id == 1) { button.defaultIcon = new Quad(10, 10, 0xff0000); } button.label = item.label; }; group.addEventListener(Event.TRIGGERED, triggeredHandler); group.direction = ButtonGroup.DIRECTION_VERTICAL; group.gap = 5; group.lastGap = 20; } function triggeredHandler( event:Event):void { trace( "button triggered:",event.data.id); } } }