Flex - 点击Tree中的一行 打开/关闭 节点
作者:hangge | 2015-03-03 11:13
在Flex的Tree组件中,如果要打开某个节点的话,点击节点本身是不好用的,只能点击节点前面的那个很小的“三角符号”,这种用户体验其实是很糟糕的。
不过我们可以通过Tree中的itemClick事件来自己实现这个事情,这样点击节点文本也可以实现节点展开与关闭。
<?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" xmlns:mx="library://ns.adobe.com/flex/mx"> <fx:Script> <![CDATA[ import mx.events.ListEvent; [Bindable] private var mydata:XML = <root text="根节点"> <node text="节点1"> <node text="节点1-1"/> <node text="节点1-2"/> </node> <node text="节点2"> <node text="节点2-1"/> <node text="节点2-2"/> </node> </root> private function itemClickHandler(evt:ListEvent):void { var item:Object = Tree(evt.currentTarget).selectedItem; if (tree.dataDescriptor.isBranch(item)) { tree.expandItem(item, !tree.isItemOpen(item), true); } } ]]> </fx:Script> <mx:Tree id="tree" dataProvider="{mydata}" labelField="@text" itemClick="itemClickHandler(event)" width="180" height="200"/> </s:Application>
全部评论(1)
很棒
站长回复:多谢夸奖