利用render事件來提高as3程式的運行效率

 DisplayObject有一個render事件,他會在重繪DisplayList之前觸發,這給我們提供了在重繪之前最後一次操作的機會。每次需要DisplayObject觸發render事時,都要調用一次stage.invalidate();下面用一個小例子來說明一下具體用法把。假設我們現在要寫一個list組件,該組件有addItem()方法用於添加list項目,和remvoeItem()方法用於刪除list項目,當然還可能有addItemAt(),removeItemAt()等方法,這些方法

AS3倒影演算法

function createRef(picSource:DisplayObject):void{    // 倒置    var bd:BitmapData = new BitmapData(picSource.width, picSource.height, true, 0x12346f);    var mtx:Matrix = new Matrix();    mtx.d = -1;    mtx.ty = bd.height;    bd.draw(picSource, mtx);  

AS3.0中Matrix類的學習經驗(改變註冊點、旋轉映像)

1.如何使用Matrix類來改變註冊點:    做相簿功能時一開始最煩的就是註冊點在(0,0)的位置,為了能方便的旋轉、縮放操作,需要將註冊點移動到中心,參考雪の貓的方法,做了簡化:代碼var ōbj=this.myImageBitmap; //要改變的圖片或影片剪輯var matrix:Matrix = obj.transform.matrix;matrix.tx=0;matrix.ty=0;var halfW:Number = obj.width/2;var halfH:Number  = 

繼承父類的兩種情況

在as3中如果繼承的子類中1.沒有加入建構函式,子類將會調用父類的建構函式2.子類中有建構函式,但是沒有調用super(),同樣子類會調用父類的建構函式看下面的例子1:package{    public class A    {        public function A()        {            this.initA();            }                private function initA():void        {       

設定時間運行函數方法:setInterval與clearInterval

setInterval()函數 public function setInterval(closure:Function, delay:Number, ... arguments):uint語言版本: ActionScript 3.0運行時版本: AIR 1.0 Flash Player 9以指定的間隔(以毫秒為單位)運行函數。作為使用 setInterval() 方法的替代方法,請考慮建立一個 Timer 對象,帶有指定的間隔,並使用 0 作為repeatCount

Flash 平台技術的最佳化(一) 運行時代碼執行基本原理

     瞭解如何改進應用程式效能的關鍵是瞭解 Flash 平台運行時如何執行代碼。運行時在一個迴圈中運行,其中某些操作是針對每個“ 幀” 發生的。在這種情況下,幀只是由為應用程式指定的畫面播放速率決定的一段時間。分配給每個幀的時間直接對應於畫面播放速率。例如,如果指定畫面播放速率為 30 幀/ 秒,則運行時會嘗試使每個幀的執行時間為三十分之一秒。可以在創作應用程式時指定初始畫面播放速率。可以使用 Adobe Flash Builder 或 Flash Professional

TweenLite 使用詳解(譯文)

TweenLite 是一個緩動的類包,功能強大,並且便於使用,為了更多的(E文欠佳的、初學的)朋友瞭解它,使用它,特此翻譯了一下TweenLite 類文檔中的說明檔案,主要是對參數的說明,希望對大家有用。TweenLite.as/*版本: 8.02日期: 8/24/2008ACTIONSCRIPT 語言版本: 3.0 (AS2 版也有提供)更新 及 更多文檔請訪問: http://www.TweenLite.com (這裡的連結指向 AS3 版)描述:        緩動。

Function中的apply函數的應用

最近在研究PureMVC源碼的過程中發現Function頂級包中的apply函數蠻有意思的,通過這個函數,可以及時的調用不同類中的同一個函數,這是該函數的格式:apply(thisArg:*, argArray:*):*指定要在 ActionScript 調用的任何函數內使用的 thisObject 的值。此方法還指定要傳遞給任何被調用函數的參數。由於 apply() 是 Function 類的方法,所以它也是 ActionScript 中每個 Function

Flash Socket底層接受資料的初級處理

用flash去開發應用,,免不了網路通訊,特別是網路遊戲,需要用到即使通訊。as3提供了兩個支援即時通訊的類:XMLSocket和Socket,前者其實是只支援發送字串,而後者就強大多了,支援發送位元組,相對來說比較底層,而這也給我們更多的發揮空間。其實,flash

Flash 平台技術的最佳化(二) 節省記憶體

      節省記憶體      對於應用程式(尤其傳統型應用程式)開發一直非常重要。然而,記憶體的使用量對行動裝置來說非常重要,因此有必要限制應用程式佔用的記憶體量。顯示對象選擇適當的顯示對象。ActionScript 3.0 包含很多顯示對象。要限制記憶體用量,最簡單的最佳化技巧之一是使用合適類型的顯示對象。對於非互動式簡單圖形,請使用 Shape 對象。對於不需要時間軸的互動式對象,請使用 Sprite 對象。對於使用時間軸的動畫,請使用MovieClip

Levenshtein Distance(LD)-計算兩字串相似性演算法

    兩字串相似性計算方法有好多,現對基於編距的演算法的相似性計算自己總結下。     簡單介紹下Levenshtein Distance(LD):LD 可能衡量兩字串的相似性。它們的距離就是一個字串轉換成那一個字串過程中的添加、刪除、修改數值。    舉例:如果str1="test",str2="test",那麼LD(str1,str2) = 0。沒有經過轉換。如果str1="test",str2="tent",那麼LD(str1,str2) =

Flash 平台技術的最佳化(三) 文字物件和記憶體

      將新文本引擎用於唯讀文本;將 TextField 對象用於輸入文本。Flash Player 10 引入了一個功能強大的新文本引擎 flash.text.engine (FTE),該引擎可以節省系統記憶體。但是, FTE 是一個低級 API,要求在其上使用其他 ActionScript 3.0 層。對於唯讀文本,最好使用新文本引擎,它佔用較少的記憶體並提供更好的呈現效果。對於輸入文本,最好使用 TextField 對象,因為在建立典型行為(例如,輸入處理和自動換行)時需要的

Flash 平台技術的最佳化(四) 事件模型與回調

考慮使用簡單的回調代替事件模型。ActionScript 3.0 事件模型基於對象調度的概念。事件模型是物件導向的,可以進行最佳化以重複使用代碼。dispatchEvent() 方法逐一查看接聽程式列表,並對各個註冊的對象呼叫事件處理函數方法。然而,事件模型的一個缺點是可能要在應用程式的生存期內建立許多個物件。假設您必須從時間軸調度一個事件來指示動畫序列的末尾。要實現此通知,您可以從時間軸中的特定幀調度一個事件,如以下代碼所示:dispatchEvent( new Event (

去掉xml中的命名空間

有的時候xml中會帶有命名空間使操作xml不方便,這時可以使用下面的方法xml類內建的函數去掉:removeNamespace(ns:Namespace):XML刪除該對象及其所有子級的給定命名空間。如果命名空間由該對象的限定名稱或該對象屬性的限定名稱引用,則 removeNamespaces() 方法不會刪除該命名空間。例子:var xml:XML = <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"

flex將一副圖片轉化成二進位,然後再轉化成bmp

As包:package com.pag{ import flash.display.Bitmap; import flash.display.BitmapData; import flash.geom.Rectangle; import flash.utils.ByteArray; import mx.controls.Alert;  public class BitmapBytes {  public function

簡單BitmapData粒子的實現

發了兩個“說說BitmapData”文章之後,一些同學希望能提供源碼。這次我提供了另外一個例子的源碼,代碼能很清晰的體現BitmapData粒子的基本做法。至於如何從這個基本結構發展成這樣那樣的效果,大家可以自己琢磨下。這裡是示範,四萬個粒子的自由落體。http://www.ryan-liu.com/demo/particle/pixel_animation.html源碼中主要分三個部分,BitmapData操作,粒子運算,和之前還沒提過的BitmapData特效。BitmapData的像素操作

getChildByName()與getChildAt()效率比較

var monClip:MovieClip = new MovieClip();monClip.name = "monOcurrence";addChild ( monClip );var depart:Number = getTimer();for ( var i:int = 0; i< 5000000; i++ ){getChildByName ("monOcurrence");}var arrivee:Number = getTimer();// affiche : 854 mstr

一些flash牛人們的Blog

Alex Uhlmann:http://weblogs.macromedia.com/auhlmann/ChristopheCoenraets:http://coenraets.org/ 精選CodeSlinger:http://blogs.digitalprimates.net/codeSlinger/Deitte:http://www.deitte.com/Dougmccune:http://dougmccune.com/blog/ 精選Flex

Tween緩衝心得

Tween緩衝Tween緩衝大家應該都不陌生,說白了就是從一起始位置逐漸移動到目標位置的過程,這個過程可以是加速移動,也可以是減速移動,這些不同的緩動方式就是Tween的各種ease。Tween演算法概念知道了,瞭解一下Tween的演算法對我們更好的使用Tween或者編寫自己的Tween都是很有協助的。在緩動過程中,隨著時間的推移,對象從起始位置開始逐漸向目標位置移動,我們假設移動的距離為disX,並將其作為y軸,時間t作為x軸,這樣可以輕鬆的得到一條曲線,如:下載 (16.96 KB)前天 1

Flash AS3 Regex

1.  驗證中文字元:     //初始化Regex類    var pattern:RegExp=/[/u4e00-/u9fa5]/;    //需要驗證的字串   var nihao:String="你好";   var hello:String="hello";   //輸出結果   trace("驗證'你好'字串的結果:"+pattern.test(nihao));   trace("驗證'hello'字串的結果:"+pattern.test(hello)); 2.

總頁數: 61357 1 .... 20538 20539 20540 20541 20542 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.