2011-03-30 45 views
0

听一个事件我有以下问题:Flex 4中,由父母

说明:

我有一个网页,一个按钮和一个火花列表(spark.components.List),当按钮被点击,列表中的所有元素都会改变它们的标签。

该列表使用自定义项目渲染器来显示数据(渲染器是一个Spark项目渲染器:s:ItemRenderer,并且将显示将从数据库中显示的数据)。

当我点击按钮时,我派遣一个事件“button_clicked”,该事件应该被自定义项目渲染器中的所有元素监听。

在渲染器,我有这个功能应该听“button_clicked”事件:

public function init():void 
{ 
this.addEventListener("button_clicked", button_clicked); 
} 

public function button_clicked(event:Event):void 
{ 
mdm.Dialogs.prompt("Button clicked event dispatched"); 
} 

问题: 的方法“button_clicked”永远不会执行,这意味着该事件不是在项目渲染器中侦听。

任何人都可以帮助我了解如何在父级中分派事件并在ItemRenderer对象中侦听它。

感谢

回答

0

a related question

在渲染器的init(),您需要一个事件侦听器添加 不渲染, 但将指派 事件的容器。

实施例:

container.addEventListener(Container.SELECT_ALL_USERS, selectAllHandler, false, 0, true);