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

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

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

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

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

按照 Android 程序一般設(shè)計(jì)方法,一般一個(gè)界面對(duì)應(yīng)一個(gè) Activity。這樣就需要設(shè)計(jì) 6 個(gè) Activity 子類對(duì)實(shí)現(xiàn)各個(gè)界面。
在移植的過(guò)程,這里采用了一個(gè)簡(jiǎn)單的方法,采用一個(gè) Activity 對(duì)就于 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 象撲克牌一樣疊放在一起,這樣將六個(gè)界面都放在主 Activity 的 FrameLayout 中,開始將它們都設(shè)置為不可見,需要顯示某個(gè)界面時(shí),設(shè)為可見并放在最前面,也就實(shí)現(xiàn)了多個(gè)用戶界面。

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

就是用于屏幕切換。
另外,有于程序主要移植于 JavaME,并且主要目的是為了了解 Android 平臺(tái),和 JavaME 版相比不夠完善,但基本功能是實(shí)現(xiàn)了,如有興趣的可以進(jì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