2011-03-08 79 views
0

有没有办法克隆嵌入式类?否则,我无法直接使用我的自定义方法。克隆嵌入式swf类

从类内嵌入不起作用。

package { 
import flash.display.Sprite; 

public class Player { 
    public var player:Sprite; 
    [Embed(source = '../lib/player.swf')] private var swf:Class; 
    public function Player() { 
     this = new swf(); // doesnt work 
    } 
    public function method1():void { 
     return; 
    } 
} 
} 

从外部嵌入类,也行不通。

package { 
import flash.display.Sprite; 

public class Main { 
    public var player:Player; 
    [Embed(source = '../lib/player.swf')] private var swf:Class; 
    public function Main() { 
     player = Player(new swf()); // doesn't work 
     player = new swf() as Player; // doesn't work 
    } 
} 
} 

或者也许有办法从嵌入实例化类并将其转换为另一个类?谢谢。

回答

2

我想你要找的东西是这样的:

[Embed(source = '../lib/player.swf', symbol='Player')] 
public class Player extends MovieClip 
{ 
    // Continue with class code as before 

如果要导入了MovieClip只有1帧,则可能需要将其更改为Player extends Sprite。这段代码当然假设您已经导出了ActionScript的MovieClip,并从Flash IDE中为其指定了类名“Player”。如果遇到问题,您可以查看here以进行逐步演练。

+0

是的,太棒了,谢谢! – Veehmot 2011-03-09 10:43:44