UIComponents
을 보유하는 UIComponent
을 확장하는 구성 요소 ObjectHolder
이 있습니다. 그러나 addChild()
을 사용하여이 하위 항목을 ObjectHolder
에 추가 한 후 너비와 높이가 0으로 유지됩니다. UIComponent
이 포함 된 하위 구성 요소의 크기로 자동 확장 될 수 있습니까?플렉스 4 addChild가 호출 된 후 UIComponent 너비와 높이가 0으로 유지됨
public class ObjectHolder extends UIComponent
{
public function ObjectHolder()
{
var c1:UIComponent = new UIComponent();
c1.graphics.beginFill(0xffffff);
c1.graphics.drawRect(0, 0, 100, 100);
addChild(c1);
trace(this.width); // Displays zero
}
}
구성 요소 자체의 크기가 결정되지 않습니다. measure() 메서드를 구현하면 measuredHeight 및 measuredWidth 속성을 통해 해당 구성 요소 부모 컨테이너에만 "제안"을 제공합니다. 하지만 대부분의 기본 Flex 컨테이너는 이러한 크기를 존중합니다. – JeffryHouser
measure() 메서드에 대해서는 읽었지만 addChild()가 호출 된 직후에는 즉시 호출되지 않습니다. 구성 요소가 동적으로 추가되므로 createChildren() 메서드를 실제로 재정의 할 수는 없습니다. – peter
@ www.Flextras.com : Flex 컨테이너를 사용하고 있지 않습니다. "컨테이너"는 UIComponent입니다. Flex 컨테이너는 자동으로 자식이 포함 된 크기로 확장됩니까? "컨테이너"UIComponent는 평면 그리드이므로 사용자는 기본적으로 Photoshop 캔버스에서 이미지와 도형을 추가하는 것과 같은 일종의 "바닥"에 객체를 동적으로 추가합니다. – peter