Flex 4.6 - 在s:List或s:ArrayCollection上启用onClick(单击)

时间:2012-09-04 17:17:53

标签: flex onclick

我一直在搜索帖子,但我找不到(我可能错过了)如何允许s:List或s中的项目:Arraycollection被点击进入移动应用程序中的另一个视图。任何帮助将不胜感激!

谢谢!

2 个答案:

答案 0 :(得分:1)

<?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"
           creationComplete="onCreationComplete()"
           >
    <fx:Script>
        <![CDATA[
            import mx.collections.ArrayCollection;
            import mx.controls.Alert;

            private var _listDataProvider:ArrayCollection = new ArrayCollection(['one', 'two', 'three']);

            private function onCreationComplete():void
            {
                list.dataProvider = _listDataProvider;
                list.addEventListener(MouseEvent.CLICK, onListItemClick);
            }

            private function onListItemClick(event:Event):void
            {
                Alert.show('Replace this Alert with code to go to view ' + event.currentTarget.selectedItem.toString() + '.', 'Item #' + (event.currentTarget.selectedIndex + 1).toString());
            }
        ]]>
    </fx:Script>
    <s:List id="list" 
            horizontalCenter="0"
            verticalCenter="0"
            />
</s:Application>

答案 1 :(得分:0)

我遇到了同样的问题。出于某些原因,Flash构建器正在正确导入Alert类(导入mx.controls.Alert)及其完整的包名,但该项目无法编译,因为它显示“无法找到导入警报”。我正在使用SDK 4.6开发移动应用程序,我知道它不支持mx控件。这只能解释为什么mx命名空间控件类没有正确导入。我希望这能正确回答您的问题,因为我建议您找到其他方法向用户发出警报信息。也许编写自定义警报组件或通过Native扩展使用平台的警报控制。