我有一个Spark列表,其中包含一个填写表单应用程序列表的数据提供程序.向每个列表项(表单应用程序)添加按钮的最佳方法是什么?此按钮将命名为“打开”,并将导航到指定的表单应用程序.
提前感谢您的任何建议!
@H_403_4@解决方法
这与@ www.Flextras.com所说的类似,所以我不打算再重复一遍.但是,我将添加一个示例和一两件事.
您的自定义ItemRenderer可能如下所示:
<s:ItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark"> <fx:Script> <![CDATA[ import mx.events.ItemClickEvent; private function requestForm():void { var event:ItemClickEvent = new ItemClickEvent(ItemClickEvent.ITEM_CLICK); event.index = itemIndex; event.item = data; owner.dispatchEvent(event); } ]]> </fx:Script> <s:Label id="labelDisplay" verticalCenter="0" /> <s:Button right="0" label="open" verticalCenter="0" click="requestForm()" /> </s:ItemRenderer>
有两件事与Flextras的答案不同:
>我使用内置的ItemClickEvent而不是自定义事件>减
编码
>我在ItemRenderer的所有者上发送事件
实际上是包含此ItemRenderer的List.因为这个,
你不需要泡泡事件.
现在,在单击Button时打开表单,执行以下操作:
myList.addEventListener(ItemClickEvent.ITEM_CLICK,openForm); private function openForm(event:ItemClickEvent):void { trace("open " + event.item.toString()); }@H_403_4@ @H_403_4@ 原文链接:https://www.f2er.com/flex/174367.html