2010-12-11 7 views
1

ユーザー定義のアイテムレンダラーを受け入れるカスタムリストコンポーネントを作成した人は誰でも成功しましたが、その動作を補強する別のクラスを装飾していますか?これは役に立つかもしれない理由のカスタムリストコンポーネント内のアイテムレンダラーをデコレートする

例としては、

  • キャッチし、イベントの伝播を停止するかによって使用される他のパッケージとインタフェースするレンダラで動作を取り入れた他
  • の代わりに新しいイベントをディスパッチカスタムコンポーネント
  • 拡大し、内部レンダラのサイズを変更するためのボタンが崩壊追加など

ここでの考え方は、CH必要としないことですユーザーレンダラーがこのコンポーネントを操作するのを怒らせるので、それを覚えておいてください。

答えて

0

うん、私はこれをFlextras DataSorterで行った。 DataSorterは、Netflix Movie Queueのように機能するカスタマイズされたリストです。ユーザーのitemRendererには内容が含まれていますが、ラッパーは数字入力フィールドに、上へ移動ボタン、下へ移動ボタン、および他のボタンコントロールを追加します。

Flex Listクラスの大幅なカスタマイズが必要だったのはかなり悪夢です。

あなたは「はい」または「いいえ」の質問があるので、私はそれに答えていると感じています。他に何を知りたいですか?

+0

私はこのシナリオで不快なリスト関連の落とし穴から私を救うための洞察を探しています(私はすでにリストの拡張性を曖昧に見ていると思います)。 – user531694

+0

私が提供しなければならない最良の洞察は、最後の手段であり、他のすべてのオプションを使い果たしていない限り、これをやろうとしないことです。あなたの髪を取り除きたいと思うように、 "プライベート"メソッドとアクセス不可能な変数がたくさんあります。猿のパッチや独自のリストを作成することは、リストクラスを拡張することよりもはるかに簡単です。 – JeffryHouser

+0

一方、RobotLegsやSwizなどの依存性の差し止めフレームワークが「自動」でこれを行うことができるかどうかを検討することをお勧めします。私は彼らが話すためにシーンの裏でどのように働くかについて十分に分かっていませんが、それは妥当と思われます。 – JeffryHouser

関連する問題