모든 사용자 지정 구성 요소가 확장하는 클래스로 사용하고있는 BaseComponentClass가 있습니다. 어떤 이유로 든 내 사용자 지정 구성 요소가 런타임에 표시되지 않습니다. 어떤 컴파일이나 런타임 오류도 발생하지 않습니다. 보호 된 UIComponent 메서드를 모두 구현하고 있습니다. 내 코드는 다음과 같습니다 UIComponent 기본 클래스가 작동하지 않습니다.
public class BaseComponentClass extends UIComponent
{
public function BaseComponentClass()
{
super();
}
override protected function updateDisplayList(unscaledWidth:Number, unscaledHeight:Number):void
{
super.updateDisplayList(unscaledWidth, unscaledHeight);
}
override protected function createChildren():void
{
super.createChildren();
for (var i:uint=0; i < super.numChildren; i++)
{
var childObj:DisplayObject = super.getChildAt(i);
addChild(childObj);
}
}
override protected function commitProperties():void
{
super.commitProperties();
}
override protected function measure():void
{
super.measure();
}
}
그럼 내가 어느 정도 이런 식으로 내 MXML의 사용자 정의 구성 요소의 기본 클래스로 사용 :
는
<local:BaseComponentClass xmlns:local="local.com.*" xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Button id="btn" label="My Button" />
</local:BaseComponentClass>
버튼을 런타임에 나타 없습니다.
보호 된 메서드를 재정의하지 않으면 (현재 추가 작업을 수행하지 않으므로) 어떻게됩니까? –
아무 반응이 없습니다. 위에서 설명한 문제는 여전히 남아 있습니다. – CodeQrius