Flex的一点入门经验(6)--spark ButtonBar组件的问题

运行以下代码

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
minWidth="955" minHeight="600">
<s:layout>
<s:VerticalLayout/>
</s:layout>
<fx:Script>
<![CDATA[
import spark.events.IndexChangeEvent;
private function changeHandler(event:IndexChangeEvent):void {
myTA.text="Selected button index: " +
String(event.newIndex) + "\n" +
"Selected button label: " +
event.target.selectedItem;
}
]]>
</fx:Script>
<s:ButtonBar change="changeHandler(event)">
<s:ArrayList>
<fx:String>test1</fx:String>
<fx:String>test2</fx:String>
<fx:String>test3</fx:String>
</s:ArrayList>
</s:ButtonBar>

<s:TextArea id="myTA" width="250" height="100"/>

</s:Application>

会发现点击一个按钮,该按钮成为选中状态,如果再点击这个按钮,按钮选中状态消失,下面显示为
Selected button index: -1
Selected button label: undefined

可是这个缺德组件的文档里,根本就没说选中按钮再次点击会取消选中状态.

解决方案是
1 用 TabBar

<s:TabBar change="changeHandler(event)">
<s:ArrayList>
<fx:String>bar1</fx:String>
<fx:String>bar2</fx:String>
<fx:String>bar3</fx:String>
</s:ArrayList>
</s:TabBar>

2 修改requireSelection属性,保证至少有一个选中.

<s:ButtonBar change="changeHandler(event)" requireSelection="true">
<s:ArrayList>
<fx:String>test1</fx:String>
<fx:String>test2</fx:String>
<fx:String>test3</fx:String>
</s:ArrayList>
</s:ButtonBar>


adobe文档里这么重要的事情根本不提,反而全是无关紧要,鸡毛蒜皮的事儿,对adobe公司的能力越来越感到怀疑.事实上,用了flash builder就很惊讶,eclipse那么好用的IDE,怎么flash builder在eclipse基础上开发,反而eclipse的一些好用的功能丢失的干干净净.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值