私は標準的なGroupコントロールを持っていて、新しいレイアウトを書いています。このレイアウトでは、updateDisplayListメソッドをオーバーライドしています。Groupいくつかの計算の後、次のように、コントロールのサイズをこのメソッド内の計算された値に変更したいと思います。
override public function updateDisplayList(containerWidth:Number, containerHeight:Number):void {
///// Here are some calculations.
layoutTarget.width = maxWidth;
layoutTarget.height = maxHeight + _padding;
}
しかし、そうしていると、ここで無限ループが発生しました。updateDisplayList何度も何度も呼ばれます。また、呼び出しごとlayoutTargetに古い幅/高さの値があります。layoutTargetからサイズを変更する正しい方法はありupdateDisplayListますか?