是否可以在不使用MXML的情况下使用Flex Framework和组件?我非常了解ActionScript,并且不想乱用一些新的XML语言只是为了获得一些简单的UI.任何人都可以提供一个包含.as文件的例子,该文件可以编译(理想情况下通过FlashDevelop,虽然只是告诉如何使用Flex SDK也可以)并使用Flex Framework?例如,只显示弹出打开警报的Flex按钮将是完美的.
如果不可能,有人可以提供一个最小的MXML文件,它将引导一个自定义AS类,然后可以访问Flex SDK吗?
我在Flash/AS3中写了一些东西,我遇到了这个问题:
ReferenceError: Error #1056: Cannot create property txtInput on package.name.DocumentClasss
基本上我有一个文档类,我可以创建movieclips剪辑的实例并编译没有问题.但是当我在舞台上放置一个输入文本字段(调色板中的"T"图标),并且它拒绝编译时出现上述错误.
我不确定这是否有所不同,但我在FlashDevelop中编写ActionScript,并在Flash IDE中完成编译.我也有两个Strict Mode并Warnings Mode选择下Publish Settings -> Flash -> Script -> Settings... -> Errors.
我已经在网上搜索了这个解决方案,并且那里的唯一建议似乎是不在Flash IDE中插入文本字段,而是在文档类中动态创建它们.
有更好的解决方案吗?
谢谢
我想玩FLASH进行应用程序开发.我正在寻找一个好的IDE.有人建议使用Flash Develop.
我使用FlashDevelop3 R2和Flex 3.3 SDK进行开发,在很多场合我必须使用嵌入元数据标签:
[Embed(source="path/to/file")]
private var Asset:Class;
Run Code Online (Sandbox Code Playgroud)
我理解上面所有这些都很好,我很感谢它的存在,因为我不喜欢经常打开Flash IDE.
当我最近通过其他作者课程时,我发现了一个我不理解的有趣的元数据标签:
[Event(name="", type="")]
Run Code Online (Sandbox Code Playgroud)
我还没有看到我需要这种情况,而且我真的不明白它是什么.
提前感谢您的帮助.
Brian Hodge
blog.hodgedev.com hodgedev.com
我试图理解Flash平台的整个混乱(主要是因为我理解被抛出的术语)到目前为止,我还无法弄清楚AIR和Flex SDK的确切关系.在没有真正查看SDK的情况下,我的理解是AIR可以让您开发Flash(即ActionScript,显然也是JavaScript/HTML)应用程序,这些应用程序可以由AIR运行时运行而无需浏览器(例如纯桌面或智能手机应用程序).Flex SDK似乎是类和其他API(类似于JavaFX?)的集合,以扩展"标准"Flash库.
现在,我已经下载了两个SDK的最新版本,显然,它并不那么简单.所以,首先我查看了AIR SDK(http://www.adobe.com/devnet/air/air-sdk-download.html,v3.4截至目前).据我所知,"adt"实用程序是AIR的主要部分,可以让您打包已完成的应用程序.但是,我不确定AIR SDK是否实际包含一个编译器 - 假设您有一堆ActionScript .as文件,并希望使用AIR SDK将它们转换为.swf或.air文件,这是否可能?
不幸的是,Flex SDK(http://www.adobe.com/devnet/flex/flex-sdk-download.html,v4.6截至目前)无助于混淆.它确实包括编译器和其他工具,但在其"bin"文件夹中,我还可以找到"adt"和"adl" - AIR工具!更重要的是,它还具有"AIR SDK license.pdf"和"AIR SDK readme.txt"文件; 从这些方面来看,Flex SDK似乎包含一些旧版本的AIR SDK版本2.
为了让事情更加混乱,我还在Adobe的网站上找到了"Flex和AIR®SDK的组合版本(Flex SDK 4.6.0.23201和AIR 3.4.0.2540 SDK)"(http://gaming.adobe.com/getstarted /).似乎这不仅仅是通过将AIR 3.4文件复制到Flex 4.6文件来创建的,而是将另一个项目添加到列表中.
所以,基本上,我想知道这两个(三个?)SDK之间的区别.我需要Flex实用程序来编译吗?为什么"纯"Flex SDK包含AIR的部分(?)?我可以将任何版本的AIR SDK复制到Flex SDK中,以便与FlashDevelop一起使用吗?
我想在自定义按钮中调用上下文菜单的放大和缩小功能.在adobe flex应用程序中.
代码如下:
onZoomInButtonClick()
{
this.contextMenu.customItems.zoom.doIn();
}
Run Code Online (Sandbox Code Playgroud) 有没有办法重新格式化代码,例如在Eclipse中使用CTRL-SHIFT-F强制缩进FlashDevelop中的缩进?
我试图在FlashDevelop中向papervision添加项目引用或swc,但是intellisense没有提起它.我以前做过,但我忘记了.
谢谢.
我已经完成了有关在AS3中嵌入字体的所有主题,我可以找到,并尝试了所有解决方案.我可能错过了一些明显的东西,但我并不完全明白我在做什么,所以请指导我正确的方向.许多答案涉及Flash Builder或其他工具,但我使用的是FlashDevelop.不知道这是否重要.
我在Main.as中有这一行:
[Embed(source = "assets/SKA_75_marul_CE_extended.ttf",
fontName = "SKA_75_marul_CE_extended",
fontWeight = "bold",
advancedAntiAliasing = "true",
mimeType = "application/x-font")]
public static var SKA_75_marul_CE_extended:String;
Run Code Online (Sandbox Code Playgroud)
这存在于一个名为Pointer.as的扩展Sprite的构造函数中:
var format:TextFormat = new TextFormat();
format.font = "SKA_75_marul_CE_extended";
format.color = 0xFFCCCC;
format.size = 20;
var label:TextField = new TextField();
label.defaultTextFormat = format;
label.text = "test";
label.embedFonts = true;
label.antiAliasType = AntiAliasType.ADVANCED;
//label.setTextFormat(format); --> I tried this too, didn't work...
label.defaultTextFormat = format;
label.x += img.width + 50;
this.addChild(label);
Run Code Online (Sandbox Code Playgroud)
我发现让它显示任何东西的唯一方法是,如果我关闭embedFonts.我试过嵌入C:/windows/fonts/arial.ttf但没有成功.
嵌入字体似乎是一种与众不同的黑暗艺术,经过1小时的挣扎,我必须承认.请发送帮助.
更新:
这是工作代码,结果是由于具有正确的操作顺序......:
[Embed(source="assets/SKA_75_marul_CE_extended.ttf",
fontName = …Run Code Online (Sandbox Code Playgroud) 我正在使用FlashDevelop编写Adobe AIR Android应用程序,我想确保当我将其发布到Google Play时,它仅适用于支持基于Adobe AIR的应用程序的设备.在我的项目文件中配置它的正确方法是什么?
更新: Adobe AIR 3的技术要求(来自Adobe):
flashdevelop ×10
apache-flex ×5
flash ×5
air ×2
actionscript ×1
adobe ×1
android ×1
flex3 ×1
fonts ×1
hotkeys ×1
ide ×1
manifest ×1
mxml ×1
sdk ×1
textfield ×1