如何将字符串转换为没有getDefinitionByName的类,因为该类未链接到库项目,并且getDefinitionByName仅适用于链接到库或已初始化的类!有没有办法?或者我必须初始化我想要使用的每个课程?这对Adobe来说真是太愚蠢了!AS3字符串到类
AS3字符串到类
回答
getDefinitionByName()
将与任何类名称一起工作,链接到库或不。你的问题很可能是因为你没有提到代码中的类名,它根本不在你的swf中。您必须确保在您的代码中至少有一个地方使用了该类,否则将不会编译该类。
这可以很简单,只需将它们放在主类的一行即可:
public class Main {
public function Main(){
ClassYouWant;
AnotherClass;
codeThatDoesStuff();
}
}
没关系,我想要的不能完成!除了有eval以外的任何语言。我的想法是,我会创建许多类,而不必在任何地方启动它们! – Alex 2011-06-07 10:37:45
当你说“不必在任何地方启动它们”时,我不明白你问的是什么。你能提供某种例子吗? – grapefrukt 2011-06-07 13:15:49
我有一个游戏。我希望每个级别都是扩展LevelTpl类的类,比如“class Level1 extends LevelTpl”。然后我想调用像“Level”+ curLevel这样的任何级别。问题是在AS3中没有eval,所以我将不得不使用getDefinitionByName,但getDefinitionByName仅适用于所有已初始化的类!所以如果我制作100个关卡=> 100个关卡,我必须在使用它们之前启动它们!我希望我不必这样做! – Alex 2011-06-12 17:59:04
简短的回答:
如果你想避免包括类引用(由@grapefrukt建议),你就必须编译库这些类和参考,从你的主要应用程序RSL(运行时共享库)
长的答案:
有没有其他的方式,通过它的名字来创建一个类,而不是使用getDefinitionByName()。
但是有几种编译代码的方法。默认情况下,如果您有一个不包含库的应用程序,它将不会编译您的代码中未引用的类。你称这种愚蠢的,但有一个很好的理由:它减少了你的瑞士法郎的大小,因此下载你的应用程序的时间。
如果您在使用图书馆有,他们可以从主应用程序中引用三种方式:
- 合并成代码
- 运行时共享库(RSL)
- 外部
的第一个选项将采用主应用程序中引用的库中所有(也是唯一)的类。这导致较小的swf大小。
第二个选项将整个库编译成一个单独的swf,由主应用程序加载。这会导致更大的文件大小,但同一个swf可以被多个应用程序使用。对你来说最重要的是:所有的类都在swf中,所以它们可以被getDefinitionByName()引用,而不必在你的主应用中包含这个类。
Ty,但我用它来制作Flash CS5中的flash游戏:)不是flex ... – Alex 2011-06-07 10:38:50
@Alex您也可以链接到Flash CS5中的RSL(通过'高级ActionScript属性'),但我想编译你的库需要使用FlashBuilder,或者使用mxmlc编译器在命令行中执行。 mxmlc也可以编译仅限ActionScript的库;它不仅限于Flex。所以,你想要做的事情可以做到,但对你来说可能并不容易。 – RIAstar 2011-06-07 12:07:47
@Alex看看我刚发现的内容:http://active.tutsplus.com/tutorials/workflow/how-to-use-an-external-library-in-your-flash-projects/ – RIAstar 2011-06-07 17:02:40
- 1. AS3字符串到XML
- 2. AS3:字符串到cookie?
- 3. 检查与字符串在AS3类型
- 4. as3数组字符串到movieClip
- 5. AS3,从字符串到数据类型x的动态转换
- 6. 查找字符串AS3
- 7. AS3,字符串变量
- 8. AS3替换字符串
- 9. AS3 - 获取字符串值
- 10. 插入字符串AS3
- 11. AS3 URL字符串 - > URLRequest
- 12. 从字符串AS3获取字
- 13. Java字符串到类型
- 14. JSP字符串到Java类
- 15. AS3 - 用可变字符串替换部分字符串
- 16. 查找以字符串AS3开头的字符串
- 17. 字符串到字符串
- 18. 字符串搜索替换AS3
- 19. AS3 - 将字符串转换为位图
- 20. AS3:使用字符串可变
- 21. AS3拆分字符串问题
- 22. AS3 Adobe AIR:返回xml字符串
- 23. AS3:作为变量的字符串
- 24. 比较AS3中的句子(字符串)
- 25. 从字符串执行as3代码
- 26. 将PHP Explode字符串转换为AS3
- 27. AS3字符串分割保持标签
- 28. AS3投字符串作为对象
- 29. 如何在AS3中输出字符串
- 30. 如何订购我在AS3字符串
+ 1,这很有趣,我不知道另一个名字呢! – Eugeny89 2011-05-28 21:06:24
我不确定你的意思是“已经初始化”的类,而不想初始化你想要使用的每个类。你如何通过初始化来使用它们? – grapefrukt 2011-05-28 23:35:39