protected function init(event:FlexEvent):void
{
btnBack.addEventListener(MouseEvent.CLICK, viewOverview);
}
protected function viewOverview(event:MouseEvent):void
{
dispatchEvent( new ChangeSelectedIndex(1,ChangeSelectedIndex.index_passed));
}
我尝试像这样添加eventlistener,但没有任何反应。我已经检查过,并且从creationcomplete语句中调用了init函数。您可以在下面看到包含HGroup的按钮。
<s:HGroup x="116" y="0" width="200" height="25">
<s:Label id="lblOverviewTitle" fontFamily="Verdana" fontSize="24" fontWeight="bold"
text="Artist Details"/>
<s:Button id="btnBack" label="Back" />
</s:HGroup>
答案 0 :(得分:2)
为什么需要在ActionScript中添加事件列表?您可以在MXML中执行此操作:
<s:HGroup x="116" y="0" width="200" height="25">
<s:Label id="lblOverviewTitle" fontFamily="Verdana" fontSize="24" fontWeight="bold"
text="Artist Details"/>
<s:Button id="btnBack" label="Back" click="viewOverview(event)"/>
</s:HGroup>
正如对主要问题的评论中所述,似乎您在创建组件之前尝试将事件侦听器添加到btnBack。您应该在initialize事件中添加事件侦听器,因为在触发createChildren()之后初始化触发。
如果您正在构建Spark组件,并且btnBack是外观部件,则应使用partAdded()方法添加事件侦听器。