Flex 4には、アイテムレンダラーを備えたSparkListコンポーネントがあります。リスト内のアイテムをクリックして選択し、同じ選択したアイテムをクリックして選択を解除したいと思います。オン/オフスイッチのように。
私のアイテムレンダラーには次の状態があります。
<s:states>
<s:State name="normal"/>
<s:State name="hovered"/>
<s:State name="selected"/>
</s:states>
そこで、クリックイベントリスナーをアイテムレンダラーに追加しようとしました。
private function selectUnSelect():void {
if (currentState == 'selected') currentState = 'normal';
else currentState = 'selected';
}
厄介な動作で...選択した状態でアイテムをもう一度クリックした後でも、アイテムが選択されたままになります。
コマンド(Macの場合)またはWindowsの[コントロール]ボタンなしでリストコンポーネントを使用することを考えてください。