简明现代魔法 -> Flex/ActionScript/AIR -> Flex嵌入图片资源
Flex嵌入图片资源
2009-10-06
Flex软件中经常需要使用一些外部的资源,如图片、声音、SWF或字体,虽然你也可以在软件运行的时候引入和载入,但是也可能经常需要直接将这些资源编译(Compile)到软件中,也就是直接嵌入资源(Embedding Assets)。Flex中可以直接嵌入图片image,影片movie,MP3,和TrueType文字。
效果演示
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute" width="640" height="320">
<mx:Script>
<![CDATA[
[Embed(source="images/desktop.jpg")]
[Bindable]
public var imgCls:Class;
]]>
</mx:Script>
<mx:Image x="80" y="10" width="480" height="300" source="{imgCls}"/>
</mx:Application>
在字符数据区域内,[Embed(source="images/desktop.jpg")]表示将图片资源嵌入,并让变量imgCls可以引用该资源。[Bindable]表示该变量imgCls是可以被数据绑定的。之后,就可以在多个地方引用该嵌入资源的变量。
嵌入资源的利处
比起在运行时访问资源,对嵌入资源的访问速度更加快速;
可以用简单的变量访问方式,在多个地方引用所嵌入的资源。这是变量就代表资源,提高写代码的效率;
嵌入资源的弊处
增大了SWF文件的大小,因为是将资源直接包含;
由于SWF文件增大,将使得初始化的速度变慢;
当资源改变后,需要重新编译SWF文件;
