我有一个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>
的按钮从不在运行时显示出来。
如果您不覆盖受保护的方法(因为您目前没有在其中做任何额外的工作)会发生什么? – 2010-01-05 00:04:11
什么都没有发生。我上面描述的问题仍然存在。 – CodeQrius 2010-01-05 00:10:39