- package
- {
- import flash.display.DisplayObject;
- import flash.display.Sprite;
- import flash.geom.Rectangle;
- public class DisplayObjectUtil
- {
-
- // Duplicate显示对象
- public static function duplicateDisplayObject( target:DisplayObject, auto_add:Boolean = false ):DisplayObject{
- var cls:Class = Object(target).constructor;
- var tmp:Sprite = new cls();
-
- // 克隆属性
- tmp.transform = target.transform;
- tmp.filters = target.filters;
- tmp.cacheAsBitmap = target.cacheAsBitmap;
- tmp.opaqueBackground = target.opaqueBackground;
- if ( target.scale9Grid ) {
- var rect:Rectangle = target.scale9Grid;
- tmp.scale9Grid = rect;
- }
-
- // 自动加为target的兄弟
- if ( auto_add && target.parent ) {
- target.parent.addChild( tmp );
- }
- return tmp;
- }
-
- }
- }
使用DisplayObjectUtil进行显示对象复制与属性克隆

本文介绍了一个名为DisplayObjectUtil的工具类,用于在Flash环境中复制DisplayObject并克隆其属性,包括transform、filters、cacheAsBitmap、opaqueBackground以及scale9Grid。同时提供了一个实例演示如何自动将复制的对象添加为目标对象的兄弟。

被折叠的 条评论
为什么被折叠?



