查看: 1194|回复: 2
打印 上一主题 下一主题

[提问] 如何将外部加载的资源声明为一个Class?注意是想动态加载

[复制链接]

2206

主题

2

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
32449
精华
23

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

跳转到指定楼层
楼主
发表于 2013-6-7 17:14:06 |只看该作者 |倒序浏览
pstatus"> 本帖最后由 比巴卜 于 2013-6-7 17:15 编辑

如题,如何将外部加载的资源声明为一个Class?注意是想动态加载,不是想嵌入到主文件中。。。。
比如说下面一段代码:
  • private var cubeTexture:BitmapCubeTexture;
  • public class Terrain extends Sprite
  •         {
  •                 // Environment map.
  •                 [Embed(source="/../embeds/skybox/snow_positive_x.jpg")]
  • }
  • private function initMaterials():void
  •                 {
  •                         cubeTexture = new BitmapCubeTexture(new EnvPosX().bitmapData);
  • }

复制代码

如果采用嵌入的话会增大主文件体积,因此我想改成这样:

  • public class Terrain extends Sprite
  • {
  • loadSrc();
  • }
  • private function loadSrc():void
  • {
  • var ldr: Loader = new Loader;
  • ldr.load(new URLRequest("/../embeds/skybox/snow_negative_x.jpg"));
  • ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
  • }
  • private function onComplete(event:Event):void
  • {
  • var loaderInfo: LoaderInfo = LoaderInfo(event.target);
  • EnvPosX = new Class(loaderInfo.content);
  • }

复制代码

可是这样的话,EnvPosX = new Class(loaderInfo.content);
一行会报错。。。。所以这里不知道应该怎么写呢?我说的这样,就是把外部加载的一个东西,比如说是图片或者一个swf,注册成一个类,可以实现么?

求大神指点。。。拜谢!


分享到: QQ好友和群QQ好友和群 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
转播转播0 分享淘帖0 收藏收藏0 支持支持0 反对反对0
回复

使用道具 举报

2206

主题

2

听众

3万

积分

资深设计师

Rank: 7Rank: 7Rank: 7

纳金币
32449
精华
23

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

沙发
发表于 2013-6-7 17:16:21 |只看该作者
本帖最后由 艾西格亚 于 2013-6-7 21:59 编辑

查到一个做法大家看看:

外部加载一个swf。可以提取出这个SWF中所有的类为class
具体做法:加载swf。在完成事件中
var a:Class=event.target.applicationDomain.getDefinition("类名") as Class;
如果是显示对象mc
var b:MovieClip=new a as MovieClip;
addChild(b);就可以显示了
回复

使用道具 举报

cdl51    

83

主题

0

听众

955

积分

初级设计师

Rank: 3Rank: 3

纳金币
681
精华
11

最佳新人 活跃会员 热心会员 灌水之王 突出贡献

板凳
发表于 2013-6-7 17:16:59 |只看该作者
同意沙发看法,如果不行
getQualifiedClassName();
getDefinitionByName()
这两个组合一下,看看能不能得倒Class
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

手机版|纳金网 ( 闽ICP备2021016425号-2/3

GMT+8, 2025-8-6 11:07 , Processed in 0.082519 second(s), 32 queries .

Powered by Discuz!-创意设计 X2.5

© 2008-2019 Narkii Inc.

回顶部