1. 程式人生 > >android雙緩衝

android雙緩衝

 canvas的頁面交換的確為遊戲開發初學者帶來了困擾
我經過多次實踐之後發現了一個完美的方法:
用一個後臺畫布bk_canvas,所有更新畫圖都在這上面進行。當然dirtyRectList
你只用維護一個了,每次畫的時候先在bk_canvas上畫好了,然後在把bk_canvas拷貝到
顯示的canvas上去,怎麼拷貝呢?
Bitmap bitmapBase = new Bitmap()
Canvas bk_canvas = new Canvas(bitmapBase)
bk_canvas.draw()...//更新,畫圖

Canvas c = lockCanvas(null);
c.drawbitmap(bitmapBase);
unlock(c)....