为什么UIComponent不显示内容?

时间:2013-11-27 23:05:35

标签: actionscript-3 flex flash-builder mxml

以下代码有效。但是,如果我将组件中的容器从Canvas更改为UIComponent,则容器内的Canvas不会显示。为什么会这样?

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:local="*">
    <local:Comp  />
</mx:Application>

Comp.mxml

<mx:Canvas   xmlns:mx = "http://www.adobe.com/2006/mxml"  buttonMode="true" useHandCursor="true"  >
    <mx:Canvas  width="100" height="100" backgroundColor="0xffff00"  />
</mx:Canvas>

2 个答案:

答案 0 :(得分:1)

因为UIComponent没有实现measure()或updateDisplayList()方法,因此从不给你的组件大小;因此,没有可视区域显示子组件。

请阅读Flex Component LifeCycle

答案 1 :(得分:0)

以下是UIComponent规范中的引用:

  

UIComponent类不用作MXML标记,但用作其他类的基类。

有关详细信息,请参阅此处的UIComponen规范: http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/core/UIComponent.html