国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 開(kāi)發(fā) > Flex > 正文

Flex addChild()方法注意事項(xiàng)

2024-09-12 17:51:25
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
譬如以下代碼就會(huì)報(bào)錯(cuò):
private function init():void { var sp:Sprite = new Sprite(); addChild(sp);}
復(fù)制代碼 代碼如下:

TypeError: Error #1034: 強(qiáng)制轉(zhuǎn)換類(lèi)型失敗:無(wú)法將 flash.display::Sprite@156b7b1 轉(zhuǎn)換為 mx.core.IUIComponent。

這是因?yàn)锳pplication的addChild方法并非完全繼承自DisplayObjectContainer,
Application→LayoutContainer→Container →UIComponent→FlexSprite→Sprite
→DisplayObjectContainer
而是在Container那里被重寫(xiě)了:
復(fù)制代碼 代碼如下:

public override function addChild(child:DisplayObject):DisplayObject
雖然參數(shù)child的類(lèi)型是DisplayObject,但是它必須實(shí)現(xiàn)IUIComponent接口(所有Flex組件都實(shí)現(xiàn)了這一接口),才能添加。
如果要在Application里添加Sprite,可以先把它裝進(jìn)一個(gè)UIComponent,然后再添加這個(gè)UIComponent:
官方的說(shuō)法:
* <p><b>Note: </b>While the <code>child</code> argument to the method
* is specified as of type DisplayObject, the argument must implement
* the IUIComponent interface to be added as a child of a container.
* All Flex components implement this interface.</p>
例子:
復(fù)制代碼 代碼如下:

import mx.core.UIComponent;private function init():void {
var sp:Sprite = new Sprite();
var uc:UIComponent = new UIComponent();
uc.addChild(sp); addChild(uc);
}
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 石楼县| 修水县| 青海省| 成武县| 双鸭山市| 宜君县| 咸丰县| 城固县| 同德县| 泉州市| 新营市| 烟台市| 溆浦县| 浦江县| 高淳县| 朝阳县| 都安| 达孜县| 灌阳县| 龙门县| 九龙城区| 德庆县| 资中县| 时尚| 凌源市| 驻马店市| 远安县| 衡阳县| 白玉县| 平远县| 会同县| 平顶山市| 沂南县| 宁津县| 灵武市| 商河县| 峨眉山市| 龙陵县| 苍梧县| 登封市| 当涂县|