2012-05-11 5 views
0

モバイルテーマのスパークリストには、コンテキストメニューを無効にする必要のある奇妙な動作があります。フレックススパークリストLabelItemRenderer他のリストアイテムがダウン状態になったときに選択を外す

このリストのデフォルトの動作では、別のアイテムが選択状態になったときにアイテムが選択色を失うだけです。これは、ユーザーが(マウスを下に押したままにするかタップして保持する)項目のダウン状態のままになっている間に、2つの項目が選択色、まだ選択されている項目、現在の項目がダウン状態であることを示します。

私が必要とするのは、選択したアイテムが他のアイテムがダウン状態になるとすぐに選択色/状態を失うため、基本的にはダウン状態に入るとすぐに選択状態を設定する必要があるということです。

私はこれをなぜ必要としますか? 私のリストには、長押しで開くことができるコンテキストメニューが必要です。長いプレスは、長いプレスイベントがトリガーされる前にマウスアップイベントを含まないので、アイテムは選択されないので、他のアイテムは選択色を失うことはありません。

私のitemRendererはASで書かれた標準のLabelItemRendererであり、親コンポーネントではなくItemRendererでこの機能を変更するとよいでしょう。

誰かがこれを達成する手掛かりを得ましたか?

+0

Flexで「Long Press」イベントがあったとは思いませんでしたか?第3のパティジェスチャー/タッチライブラリを使用していますか?それとも自分のロールをしましたか? – JeffryHouser

+0

私はorg.gestouchライブラリを使用して長い押しジェスチャを追加しています。非常にうまく動作します。 – AlBirdie

答えて

1

LabelItemRendererを使用しているので、私はあなたがモバイルアプリを構築していると仮定します。これは一種の推測です。しかし...

itemRendererにLong Pressイベントハンドラを追加し、イベントハンドラのitemRendererのselectedプロパティを変更できますか?

このようなitemRendererの変更によって実際のリストも変更されるかどうかはわかりませんが、理論的にはそうではありません。

これ以外にも、Long PressイベントがitemRendererからバブルアップした場合、Listクラスでそれを聞き取り、selectedItemをそのように変更してから新しいメニューをポップアップさせることができます。

+0

はい、モバイルアプリ向けです。あなたの提案は有望ですね。私は次の月曜日までそれを試すのを待たなければならないでしょう。来週、すぐに戻ってきます。 – AlBirdie

+0

期待どおりに作業しました。ありがとう! – AlBirdie

関連する問題