我有一个 as3-robotlegs(信号)应用程序,我想将其作为移动项目运行。我发现我不能有纯 as3 入门类,即。
这适用于 Flash 专业或纯 as3 项目
public class TestX extends Sprite
{
protected var context:ApplicationContext;
use namespace mx_internal;
public function TestX()
{
LoaderConfig.mx_internal::_url = loaderInfo.url;
LoaderConfig.mx_internal::_parameters = loaderInfo.parameters;
context = new ApplicationContext(this); <---
this.stage.nativeWindow.visible = true;
}
}
现在对于 FlexMobile,我需要在 index.mxml 中做这样的事情
<fx:Declarations>
<context:SignalCafeContext contextView="{this}"/> <----
</fx:Declarations>
但我真的需要将我所有的 flash 组件转换为 Flex UIComponent 还是有什么方法可以在 FlexMobile 项目中使用纯 as3(无 mxml)?
谢谢
编辑:
我花了几天时间来翻阅这些很棒的答案...据我所知,它们都是正确的,我发现 amy 发布任意 swfs 效果很好,我发现使用纯 actionscript 移动项目更容易
最佳答案
命令行 Adobe AIR 开发工具 (ADT) 可以打包移动 SWF。
这样,任何从各种工具链创建的单一 SWF 都可以打包用于移动设备。
- 下载AIR 3.5 SDK .
- 确保 JRE,或使用来自 Flash Builder 的。
执行 adt 将您的 SWF 打包成 IPA:
adt -package -target [ipa-test | ipa-debug | ipa-app-store | ipa-ad-hoc] -keystore iosPrivateKey.p12 -storetype pkcs12 -storepass qwerty12 -provisioning-profile ios.mobileprovision HelloWorld.ipa HelloWorld-app.xml HelloWorld.swf icons Default.png
否则,Flash Builder 4.6 具有纯 ActionScript 移动项目:
选择文件 » 新建 ActionScript Mobile 项目
虽然 AIR 引用了 Flex SDK,但该项目将是纯 ActionScript。
选择移动设置。
确保所有引用都合并到代码中。
这会将您的项目 stub 为:
package { import flash.display.Sprite; import flash.display.StageAlign; import flash.display.StageScaleMode; public class X extends Sprite { public function X() { super(); // support autoOrients stage.align = StageAlign.TOP_LEFT; stage.scaleMode = StageScaleMode.NO_SCALE; } } }
关于actionscript-3 - 我可以将 FlexMobile 项目设为纯 as3 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13389854/