SWF自適應(yīng)布局技巧 (Rapid Flash Development)快速Flash開(kāi)發(fā)

想讓你的Flash應(yīng)用在諸多用戶面前都有一個(gè)比較好的頁(yè)面展現(xiàn),就需要一些代碼來(lái)輔助了.
注意到AS3中有一個(gè)Event.RESIZE事件,此事件當(dāng)Flash的大小發(fā)生改變時(shí)激發(fā)...AHA,找到答案了;)
看一下實(shí)現(xiàn)的代碼,以下代碼寫(xiě)在主類中:
//4.init screen size adjust
private function initScreenAdjust():void
{
//Set Scale Mode,設(shè)定縮放模式為無(wú)縮放
stage.scaleMode=StageScaleMode.NO_SCALE;
//Set Screen adjust event,設(shè)置屏幕縮放
stage.addEventListener(Event.RESIZE,screenAdjust);
//在程序初始時(shí)就調(diào)用一下界面調(diào)整
screenAdjust(null);
}
//4.1Adjust Sample實(shí)例
private function screenAdjust(evt:Event):void
{
//UIData.SCREEN_WIDTH和UIData.SCREEN_HEIGHT指的是編譯出的Flash寬高值.
//可通過(guò)[SWF(width="1024",height="768"]的形式進(jìn)行設(shè)定(FLEX),或在FLASH IDE中直接設(shè)定
var offX:int=Math.floor((UIData.SCREEN_WIDTH -stage.stageWidth)/2);
var offY:int=Math.floor((UIData.SCREEN_HEIGHT-stage.stageHeight)/2);
//this指的是主類,這樣做的原因請(qǐng)參考圖2
this.x=offX;
this.y=offY;
//內(nèi)部UI調(diào)整,這里調(diào)整的是下部工具欄的一個(gè)Y值.
mDownToolBar.y =stage.stageHeight-UIData.DOWN_BAR_OFF_Y;
}
圖2展示的是Flash主類的坐標(biāo)值與stage寬高的關(guān)系,這里的調(diào)整是將Flash主類的左上角始終貼齊當(dāng)前Flash Player的左上角,無(wú)論尺寸如何變化.
圖2
其實(shí),我這里只是給出一種界面調(diào)整方案而已,有時(shí),你可能希望主類局中,一切就看你的需要嘍.
一個(gè)簡(jiǎn)單的示例程序地址,可以通過(guò)調(diào)整瀏覽器的大小來(lái)觀察界面的布局改變:Video始終居中;上,下工具欄分別位于上下兩邊,(代碼很容易,主要的上面都已經(jīng)貼了,就不附代碼了)
http://www.xia108.com/labs/rapidFlashDev/chp2.solution/2.2.1FullScreen/index.htm
貼一個(gè)實(shí)際的應(yīng)用吧,我的六度拓?fù)湓诓煌瑸g覽器下的表現(xiàn),廣告廣告;)
1024*768
1280*1024
相關(guān)文章
SWF自適應(yīng)布局技巧 (Rapid Flash Development)快速Flash開(kāi)發(fā)
當(dāng)我們開(kāi)發(fā)全站式Flash應(yīng)用時(shí),希望呈現(xiàn)一個(gè)鋪滿瀏覽器屏幕的Flash.2008-12-12AS3.0 實(shí)例學(xué)習(xí) 熟悉tween以及tweenEvent的運(yùn)用
AS3.0 實(shí)例學(xué)習(xí) 熟悉tween以及tweenEvent的運(yùn)用...2007-12-12利用asp或jsp,flash怎樣把數(shù)據(jù)庫(kù)中的一張表中的所有記錄讀取并顯示出來(lái)
利用asp或jsp,flash怎樣把數(shù)據(jù)庫(kù)中的一張表中的所有記錄讀取并顯示出來(lái)...2006-11-11用as檢測(cè)服務(wù)器端的某個(gè)flv文件是否存在的代碼
用as檢測(cè)服務(wù)器端的某個(gè)flv文件是否存在的代碼...2007-03-03