我有一个自定义项目渲染器,我在列表中使用。项目呈现器中有一个复选框和一个颜色选择器。我已经为这两个项创建了自己的自定义事件类,它们不会冒泡它们的事件。
您也可以单击列表中的项,我有3个侦听器附加到列表,我不希望列表项处理程序在单击列表的子项时触发,我如何做到这一点?
摘录如下:
protected function updateList():void
{
var proxy:ApplicationDataProxy = ApplicationDataProxy(facade.retrieveProxy(ApplicationDataProxy.NAME));
list.addEventListener(CustomColorEvent.UPDATED_COLOR, colorClickHandler);
list.addEventListener(CustomMenuEvent.CHECK_CLICKED, checkClickHandler);
list.addEventListener(MouseEvent.CLICK, clickHandler);
list.itemRenderer = new ClassFactory(FlightItemRenderer);
list.dataProvider = proxy.flightsList;
}
protected function colorClickHandler(event:CustomColorEvent):void
{
sendNotification(ApplicationFacade.UPDATE_COLOR, {id:event.data, color:event.color});
}
protected function checkClickHandler(event:CustomMenuEvent):void
{
sendNotification(ApplicationFacade.SHOW_FLIGHT, {id:event.data, visible:event.visible});
}
protected function clickHandler(event:Event):void
{
// also gets fired from colours and checkbox, BUT I DON'T WANT IT TO!!!
}