Ich habe einen benutzerdefinierten Elementrenderer, der in einer Liste verwendet. Im Elementrenderer gibt es eine CheckBox und einen ColorPicker. Ich habe meine eigenen benutzerdefinierten Ereignisklassen für diese beiden Elemente erstellt und sie sprudeln ihre Ereignisse nicht.Flex4 List ItemRenderer Kinder und Ereignisse
Sie können auch auf das Element in der Liste klicken, ich habe 3 Listener an die Liste angehängt, ich möchte nicht, dass der Listenelementhandler ausgelöst wird, wenn Kinder der Liste angeklickt werden, wie mache ich das?
Ausschnitt unten:
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!!!
}
Danke für die Antwort, genau das, was ich gesucht habe, nie zuvor verwendet, aber war mir dessen bewusst. – Neil