itemRendererとか。
無料なんですね!
http://flash-db.com/Main/2012/01/30/free-flash-ebooks-from-oreilly/?utm_source=rss&utm_medium=rss&utm_campaign=free-flash-ebooks-from-oreilly
Airだけ読もうかな。
DataGridなどのitemRendererにListとかTileListとか使いたい場合、
そのままやるセルの中に入ってしまうので、どうにか綺麗に出来ないかと。
itemEditorでも同じようになってしまうので、あまりよくないなと。
そう、ColorPicker。あんな感じ。ベースがあって、クリックすると、うにょーんみたいな。
んで、どうやんのかなっとColorPickerのソース見てみたら、
普通に、PopupManager使ってるんですね。
ポイントは、popupを作成するタイミングと、そのpopupの描画場所ですね。
itemRenderer自体は、ボタンとかで、popupを作って、
var point:Point = new Point(0,0); point = localToGlobal(point); _popup.move(point.x, point.y);
これで、クリックしたセルの左上にドンピシャいきます。
ドンピシャだと、使いづらいので、状況に応じて場所を変更する事が必要ですね。
ColorPickerもComboBaseのサブクラスなので、
ComboBoxやDateFieldと仲間ですね。
あとは、
protected function onMouseDownOutSide(event:FlexMouseEvent):void { if ( _popup ) { _popup.visible = false; } }
popup外でクリックされた場合に、非表示にすればOKでしょうか。