在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ Android/ Android 坦克大戰(zhàn)游戲設(shè)計解析八
Android 坦克大戰(zhàn)游戲設(shè)計解析八
Android 坦克大戰(zhàn)游戲設(shè)計解析一
Android 坦克大戰(zhàn)游戲設(shè)計解析五
Android 坦克大戰(zhàn)游戲設(shè)計解析六
Android 坦克大戰(zhàn)游戲設(shè)計解析七
Android 坦克大戰(zhàn)游戲設(shè)計解析二
Android 坦克大戰(zhàn)游戲設(shè)計解析三
Android 坦克大戰(zhàn)游戲設(shè)計解析四

Android 坦克大戰(zhàn)游戲設(shè)計解析八

這是本系列最后一篇,最后就是將整個程序組成起來。坦克大戰(zhàn)游戲中有六個用戶界面:

  • 音效設(shè)置
  • 開始界面
  • 選擇關(guān)卡界面
  • 游戲主界面
  • 分數(shù)界面
  • 游戲結(jié)束界面

按照 Android 程序一般設(shè)計方法,一般一個界面對應(yīng)一個 Activity。這樣就需要設(shè)計 6 個 Activity 子類對實現(xiàn)各個界面。
在移植的過程,這里采用了一個簡單的方法,采用一個 Activity 對就于 Java ME 中的 Midlet。
主 Activity 采用 FrameLayout

<?xml version=”1.0″ encoding=”utf-8″?>
 <FrameLayout xmlns:android=”http://schemas.android.com/apk/res/android”
    android:id=”@+id/mainwindow”
    android:layout_width=”fill_parent”
    android:layout_height=”fill_parent”
    >
 </FrameLayout>

FrameLayout 可以將它其中的其它 View 象撲克牌一樣疊放在一起,這樣將六個界面都放在主 Activity 的 FrameLayout 中,開始將它們都設(shè)置為不可見,需要顯示某個界面時,設(shè)為可見并放在最前面,也就實現(xiàn)了多個用戶界面。

public static void setCurrentScreen(View newScreen){
 currentScreen.setVisibility(View.INVISIBLE);
 currentScreen=newScreen;
 currentScreen.setVisibility(View.VISIBLE);
 theDisplay.bringChildToFront(currentScreen);
}

就是用于屏幕切換。
另外,有于程序主要移植于 JavaME,并且主要目的是為了了解 Android 平臺,和 JavaME 版相比不夠完善,但基本功能是實現(xiàn)了,如有興趣的可以進一步完善。

代碼下載 Android版坦克大戰(zhàn)
http://www.imobilebbs.com/download/android/battlecity/AndroidBattleCity.zip

Java ME版坦克大戰(zhàn)
http://www.imobilebbs.com/download/android/battlecity/BattleCityJavaME.zip