J'ai une liste avec un itemrenderer. Lorsque je place un bouton dans l'itemrenderer, je ne peux pas interagir avec lui. Si je survole le bouton, le survol de l'élément de la liste est déclenché, mais pas le survol du bouton. Je ne peux pas non plus cliquer sur le bouton. Vous pouvez voir ci-dessous que j'ai défini un événement de clic dans l'itemrenderer et qu'il n'est pas appelé lors du clic lorsque je lance l'application. Dois-je remplacer les méthodes rollover et click de l'itemrenderer ? Pourquoi est-ce si difficile de placer un bouton dans un itemrenderer ? Il doit me manquer quelque chose. Merci.
<!---From main.mxml-->
<s:List width="100%" borderVisible="false"
itemRenderer="itemRenderers.data_resultLayersRenderer"
dataProvider="{resultsLayers}"/>
<!---From itemRenderes-->
<s:ItemRenderer
xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:skins="skins.*" autoDrawBackground="true">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
[Bindable]
[Embed('images/add2.png')]
public var addIcon:Class;
[Bindable]
[Embed('images/delete2.png')]
public var deleteIcon:Class;
protected function iconbutton1_clickHandler(event:MouseEvent):void
{
Alert.show('test');
}
]]>
</fx:Script>
<s:states>
<s:State name="normal"/>
<s:State name="hovered"/>
</s:states>
<s:layout>
<s:VerticalLayout/>
</s:layout>
<s:transitions>
<mx:Transition toState="hovered">
<s:Animate target="{item}" duration="200">
<s:SimpleMotionPath property="borderWeight" />
</s:Animate>
</mx:Transition>
<mx:Transition fromState="hovered">
<s:AnimateColor target="{item}" duration="200"/>
</mx:Transition>
</s:transitions>
<mx:HBox id="item" verticalAlign="middle" width="100%" height="100%"
useHandCursor="true" buttonMode="true" mouseChildren='false'
paddingTop="5" paddingBottom="5">
<s:Label id="subMenuItemName" text="{data.name}"
color="#000000" color.hovered="#ff9a15"
fontSize="12" fontWeight.hovered="bold"
fontFamily="Georgia"/>
<s:Label text="{'(' + data.result + ')'}"
id="subMenuItemDescription"
color="#333333" color.hovered="#ff9a15"
fontSize="10"/>
<skins:IconButton
label="Remove"
icon="{deleteIcon}"
skinClass="skins.iconButtonSkin"
color="#ffffff"
/>
<skins:IconButton
label="Add"
icon="{addIcon}"
skinClass="skins.iconButtonSkin"
color="#ffffff"
click="iconbutton1_clickHandler(event)"
/>
</mx:HBox>