将图像嵌入移动Air应用程序会加快绘制使用图像的UI的过程吗?
如何正确嵌入图像?
谢谢!
答案 0 :(得分:1)
嵌入图像的优点是它包含在SWF文件中,并且如果应用程序必须在运行时从远程位置加载它,则可以比它更快地访问它。但它的缺点是你的SWF文件比在运行时加载资产要大。
嵌入过程非常简单,只需遵循以下步骤:
复制您的图像文件,其中“src”文件夹是您的应用程序。 Flex 4将从那里获取这些文件。当然,你可以定义子文件夹,不要搞砸。
在你的课程中定义如下的示例 [嵌入(来源=“728x90a.jpg”)] public static const imgData1:Class;
The 728x90a.jpg is the file name of the image (I didn't use sub folders here)
The imgData1 is the object where contains the data of the embedded image!
在代码中的某处,将数据加载到可视组件中,如下面的示例所示 img1.source = imgData1; img1是一个Image组件。
package
{
public class TestProjectAssets
{
[Embed(source="fonts/MySuperDuperFont.otf",
fontFamily="SuperDuperFont",
mimeType="application/x-font",
embedAsCFF="true")]
private const SuperDuperFont:Class;
[Embed(source="assets/mainMenu.png")]
public static const mainMenuImg:Class;
}
}
如果您需要处理大量资源,可以按照以下3个步骤操作:
Place them in an uncompressed zip archive
Embed the zip file as binary data:
[Embed(source = 'resources.zip', mimeType = 'application/octet-stream')]
Access the resources using [FZip][1]
如果您选择其他涉及加载外部文件的方法,请注意某些Flash游戏网站要求其托管的游戏包含在单个swf文件中。