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

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