一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

Android實例剖析筆記(八)

   和Snake的比較

      就界面Layout來說,這個程序其實和Snake沒有什么不同,同樣是采用了FrameLayout,而且游戲的主界面由一個自定義的View來實現,這里是LunarView。讀過上一篇文章的朋友也許會發現,Snake的架構是“定時器+系統調用onDraw”來實現的,這里有一個最大的缺陷就是onDraw是由Android系統來調用的,我們只能依賴它,卻無法自行控制。這就好比一個黑盒,當然,總是能把我們要的東西給做出來,可卻無法控制其做事的細節,這對于游戲這樣高效率的東西可是不利的,因此最好的解決之道當然是把繪制這部分工作自己”承包“過來,告別吃大鍋飯的,進入”聯產承包制”時代。

      此外,由于游戲的本質就是連續兩幀圖片之間發生些許差異,那么要不斷催生這種差異的發生,只要有某種連續不斷發生的事件在進行就可以,例如Snake中使用的定時器,就是在不斷地產生這種“差異源”,與此類似,一個線程也是不斷在運行中,通過它也是可以不斷產生這種“差異源”的。

  SurfaceView初探

      如果說Snake中使用的Layout加自定義View是一把小型武器的話,那在SurfaceView對于Android游戲的開發來說就算是重型武器了。我們使用前者時總是容易把游戲中某個對象(比如上文的每一個方格)當做一個小組件來處理,而后者則根本沒有這種劃分的概念,在它眼中,所有東西都是在Canvas(畫布)中自行繪制出來的(背景,人物等)。

  SurfaceView提供直接訪問一個可畫圖的界面,可以控制在界面頂部的子視圖層。SurfaceView是提供給需要直接畫像素而不是使用窗體部件的應用使用的。Android圖形系統中一個重要的概念和線索是surface。View及其子類(如TextView, Button)

  要畫在surface上。每個surface創建一個Canvas對象(但屬性時常改變),用來管理view在surface上的繪圖操作,如畫點畫線。還要注意的是,使用它的時候,一般都是出現在最頂層的:The view hierarchy will take care of correctly compositing with the Surface any siblings of the SurfaceView that would normally appear on top of it. 使用的SurfaceView的時候,一般情況下還要對其進行創建,銷毀,改變時的情況進行監視,這就要用到SurfaceHolder.Callback.

class LunarView extends SurfaceView implements SurfaceHolder.Callback
{
    
public void surfaceChanged(SurfaceHolder holder,int format,int width,int height){}
//在surface的大小發生改變時激發
    public void surfaceCreated(SurfaceHolder holder){}
//在創建時激發,一般在這里調用畫圖的線程。
    public void surfaceDestroyed(SurfaceHolder holder) {}
//銷毀時激發,一般在這里將畫圖的線程停止、釋放。
}

it知識庫Android實例剖析筆記(八),轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久91精品久久91综合 | 另类图片综合网 | 国产观看精品一区二区三区 | 亚洲操片| 爽爽影院色黄网站在线观看 | 韩国福利影视一区二区三区 | 国产区成人综合色在线 | 中文字幕在线有码高清视频 | 国产精品一区二区av | 日韩精品中文字幕一区二区三区 | 伊人网视频在线 | 91精品国产综合久久久久久 | 久久精品视频7 | 色噜噜狠狠一区二区三区果冻 | 欧美性色xo影院永久禁欲 | 欧美成人三级视频 | 久久综久久美利坚合众国 | 福利视频专区 | 国产精品第1页在线观看 | 四虎永久在线精品视频免费观看 | 蜜桃视频成a人v在线 | 欧美一区二区三区在线可观看 | 特黄aaaaaa久久片 | 成人嗯啊视频在线观看 | 国产精品欧美激情第一页 | 精品国产美女福利在线 | 久久福利一区二区 | 自拍偷拍第3页 | 国外免费精品视频在线观看 | 国产午夜三区视频在线 | 国产在线拍 | 久久中文字幕2021精品 | 国产色中色| 性趣视频| 欧美日韩中文亚洲另类春色 | 在线视频亚洲 | 国产婷婷综合在线视频 | 久久精品国产亚洲婷婷 | 亚洲第一页中文字幕 | 精品亚洲77777www | 久久九九久精品国产 |