Group、VGroup、またはHGroupのいくつかのバリアントをすべて使用するいくつかの異なるビューと画面があり、それらを正しくレイアウトするには、いずれかで書き直さなければならないことに気づきました
gap="0"
またはTileLayoutを使用
horizontalGap="0" verticalGap="0"
それらをすべて正しくレイアウトし、希望どおりにします。現在、それらをグローバルにゼロに設定できる唯一のオプションは、重いグローバルリスナーをセットアップすることです。
protected function globalListener():void
{
addEventListener(Event.ADDED_TO_STAGE, onAddedToStage, true);
}
protected function onAddedToStage(event:Event):void
{
var g:Group = event.target as Group;
if(g)
{
if( g.layout.hasOwnProperty('gap') )
{
g.layout['gap'] = 0;
}
else
{
var l:TileLayout = g.layout as TileLayout;
if(l)
{
l.verticalGap = l.horizontalGap = 0;
}
}
}
}
または、これらのレイアウトで新しいパッケージを作成し、それらに gap=0 を追加します。
package overrides.gapless
{
import spark.components.HGroup;
public class HGroup extends spark.components.HGroup
{
public function HGroup()
{
gap = 0;
}
}
}
と
package overrides.gapless
{
import spark.layouts.TileLayout;
public class TileLayout extends spark.layouts.TileLayout
{
public function TileLayout()
{
horizontalGap = 0;
verticalGap = 0;
}
}
}
など。関連ファイル (主に VerticalLayout、HorizontalLayout、TileLayout) のソース コードを確認し、値がハードコードされていることを確認できましたが、他にそれを行う方法がないと完全には信じられません。
私は最近 Flex を掘り下げ始めたばかりで、そのスキニング オプションが気に入っていますが、これについては少し戸惑っています。
これを行う方法についてのすべての助けに感謝します。