码迷,mamicode.com
首页 > 其他好文 > 详细

自定义flex组件使用标签方式添加子组件

时间:2014-12-11 16:05:03      阅读:144      评论:0      收藏:0      [点我收藏+]

标签:flex 自定义组件 添加子组件

一般情况下,当我们写了一个继承自flex组件并往里面添加了子组件,然后想用标签等方式添加子组件时候报错了,那如何解决这一的问题,自定义组件代码如下:

<?xml version="1.0" encoding="utf-8"?>

<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" 

  width="400" height="300">

<mx:Metadata>

[DefaultProperty("children")]

</mx:Metadata>

<mx:Script>

<![CDATA[

private var _children:Array = [];

private var _childrenChanged:Boolean = false;

public function set children(value:*):void

{

if(value is DisplayObject) 

_children = [value];

else

_children = value;

_childrenChanged = true;

invalidateProperties();

}

public function get children():Array

{

return _children;

}

protected override function commitProperties():void

{

super.commitProperties();

if(_childrenChanged)

{

for each(var child:DisplayObject in _children)

{

contentBox.addChild(child);

}

}

}

]]>

</mx:Script>

<mx:Canvas id="contentBox"

  width="100%"

  height="100%"/>

</mx:Canvas>


本文出自 “因简单而自在” 博客,请务必保留此出处http://dengshuangfu.blog.51cto.com/8794650/1588730

自定义flex组件使用标签方式添加子组件

标签:flex 自定义组件 添加子组件

原文地址:http://dengshuangfu.blog.51cto.com/8794650/1588730

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!