1.sprite类可 以在AS工程中直接绘 制在屏幕上.
2.要加到flex工程中需要包装,接口不匹配.
要显示Sprite可
以使用UICompo
nent包装一下,例
如
Mxml代码
var comp: UIComponen t = new UIComponen t();
comp.addCh ild(Sprite 对象);
HBox.addCh ild(comp);
Mxml代码
var comp: UIComponen t = new UIComponen t(); comp.addCh ild(Sprite 对象); HBox.addCh ild(comp);
如果Sprite包含 其它Sprite,只 需要包装最顶级的Sp rite.
由于某些原因(原Fl ash移植到Flex ),需要直接在Fle x中加入Sprite 类(或继承Sprit e的自定义类),但直 接加入Sprite是 不被允许的,主要原因 是只有实现了IUIC omponent接口 的类才能被Flex组 件架构接纳,作为组件 来使用。
flex中的显示元素 继承关系如下:
UIComponen t -> FlexSprite -> Sprite -> DisplayObj ectContain er ->....
因此Sprite无法 直接加入到Flex中 ,但可以通过以下方式 来加入,这样就不需要 修改原先的设计架构了 :
例如有一个sprit e需要加入到Flex 中:
CODE:
var sprite:Spr ite = new sprite();
var uic:UIComp onent = new UIComponen t();
uic.addChi ld(sprite) ;
addChild(u ic);
这样sprite就可 以加入到flex中, 原理是UICompo nent实现了IUI component接 口的类,可以把该类作 为Flex和Spri te的桥梁,所有的s prite类都可以通 过此类轻易的加入到f lex架构中。
或者把Sprite改 成UICompone nt就可以了
Mxml代码
var comp: UIComponen t = new UIComponen t();
comp.addCh ild(Sprite 对象);
HBox.addCh ild(comp);
Mxml代码
var comp: UIComponen t = new UIComponen t(); comp.addCh ild(Sprite 对象); HBox.addCh ild(comp);
如果Sprite包含 其它Sprite,只 需要包装最顶级的Sp rite.
由于某些原因(原Fl ash移植到Flex ),需要直接在Fle x中加入Sprite 类(或继承Sprit e的自定义类),但直 接加入Sprite是 不被允许的,主要原因 是只有实现了IUIC omponent接口 的类才能被Flex组 件架构接纳,作为组件 来使用。
flex中的显示元素 继承关系如下:
UIComponen t -> FlexSprite -> Sprite -> DisplayObj ectContain er ->....
因此Sprite无法 直接加入到Flex中 ,但可以通过以下方式 来加入,这样就不需要 修改原先的设计架构了 :
例如有一个sprit e需要加入到Flex 中:
CODE:
var sprite:Spr ite = new sprite();
var uic:UIComp onent = new UIComponen t();
uic.addChi ld(sprite) ;
addChild(u ic);
这样sprite就可 以加入到flex中, 原理是UICompo nent实现了IUI component接 口的类,可以把该类作 为Flex和Spri te的桥梁,所有的s prite类都可以通 过此类轻易的加入到f lex架构中。
或者把Sprite改 成UICompone nt就可以了