999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于android平臺賽馬游戲的開發

2013-12-31 00:00:00丁明麗
消費電子·下半月 2013年7期

摘 要:本文介紹了基于Android平臺所開發的一種賽馬游戲軟件,包括其組成和實現方法,該游戲軟件具有受眾面大、趣味性強、操作簡單的優點,適用于單人及多人娛樂,有較大的娛樂價值。

關鍵詞:android;賽馬游戲;SurfaceView

中圖分類號:TP311.52 文獻標識碼:A 文章編號:1674-7712 (2013) 14-0000-01

隨著智能手機的發展,硬件性能不斷提高,人們使用手機進行娛樂的需求越來越大,而休閑娛樂的功能則占據更大的比重,賽馬游戲是歷史最悠久的運動之一。自古至今形式變化甚多,但基本原則都是競賽速度。

本游戲基于eclipse + adt + Android sdk 4.2.2的研發平臺設計實現的。采用觸控屏幕的方式進行游戲,點擊開始游戲開始賽馬,跳轉到競猜序號界面,選擇序號后開始賽馬,賽馬結束,輸出冠軍馬匹,判斷競猜結果是否正確,連續賽馬十次,統計十次的結果,將用戶名和贏的次數存入數據庫,點擊排行榜,可以降序顯示出贏的次數的用戶名。

賽馬作為受眾面較大、趣味性較強的一類,非常適合朋友在聚會的時候玩,可以按每個人所押注賽馬的不同名次來決定誰表演節目。具有一定的娛樂價值。

一、游戲設計及框架

Horserace游戲主要包括分為三大功能模塊:系統設置管理模塊包括聲音設置、震動設置、是否橫屏布局管理等 ;游戲控制模塊包括選擇難度即馬匹數量、開始游戲競猜、排名榜等;系統幫助包括游戲說明及初始系統導航等。該游戲的整個結構如圖1所示:

二、游戲系統架構

結合Android的應用的開發特點和三層C/S架構中成熟的架構模式,本游戲系統架構分為五層:數據層、數據訪問層、業務對象層、業務邏輯層,UI表示層。

(一)數據層

此層用于存儲系統所用的各種信息。存儲方式分為二種:SQLite3 數據庫存儲和文件xml的形式進行存儲。

(二)數據訪問層

此層的主要功能是負責數據的訪問工作,不僅要實現對SQLite3數據庫表的操作,還要實現以文件的I/O操作以及XML文件的讀寫操作。為此本層主要包括以下三個部分:DBHelper用于SQLite3訪問;SharedPreferences用于讀寫XML文件;JAVA IO文件操作相關類。

(三)業務對象層

此層對真實世界中某些物體在軟件開發中的一種簡單抽象。例如 :本游戲最為主要是馬匹對象等。這一層的主要工作是實現對象關系映射(Object/Relation Mapping,ORM),即將數據訪問層獲取的數據集信息映射到與游戲關系的某些業務對象中。

(四)業務邏輯層

此層是對業務對象層為基礎,結果不同的業務需求,針對相應的業務對象,制定業務規則、業務流程,業務邏輯層在體系架構中的位置十分關鍵,起到承上啟下的作用。

(五)UI表示層

此層是與用戶直接交互部分。為達到方便用戶的使用,操作簡潔的目的,本系統以一些Android提供的控件為基類,進行了擴展。例如:MySurfaceView控件是繼承自Android的SurfaceView控件,DrawThread控件繼承于Thread,并自定義布局中設置登錄、競猜、排名榜等布局。

三、游戲實現

本游戲設計有5個主界面,分別是登錄、系統設置、競猜、賽馬、排行榜顯示。

最關鍵的賽馬的界面設置,本游戲創建了MySurfaceView類來完成賽馬背景和馬匹動態的繪制。

游戲為支持多種尺寸的屏幕,本游戲中所用的圖片(馬匹跑道圖片、馬匹圖片)都兼容不同尺寸的屏幕,根據比例將圖片進行等比縮放。

競猜界面:用戶登陸后,每位用戶有10次競猜機會,初次登陸顯示有10次機會并直接在editText中輸入馬匹編號開始競猜,進入到賽馬界面,如圖2。

最主要的賽馬界面:本游戲界面根據系統設置難度設置不同馬匹數量進行比賽,每匹馬采用兩幀交替顯示,背景采用綠色草坪圖案,每匹馬的速度每一秒都采用隨機數獲得,如圖3,某一匹馬到達終點后整個賽馬界面退出,回到競猜界面同時會顯示哪匹馬最先到達終點。到達的馬匹編號和用戶競猜的馬匹編號比對,如果猜對就將count++,之后再次輸入馬匹編號進行下一輪競猜,10次之后累計猜對結果并保存在數據庫中。

db.execSQL(\"create table user(Sno Integer ,name String,winCountint)\");//建表

ContentValues values = newContentValues();

values.put(\"name\",Login_Activity.useName);//添加鍵值對

values.put(\"winCount\",Guess_Activity.winCount);

db.insert(\"user\", 1, values);//插入數據到user表中

背景音樂設置:通過用戶輸入馬匹獲得編號,設置多種背景音樂,根據所得馬匹編號選擇播放哪種音樂,增加賽馬樂趣。

排名榜界面:通過listview控件完成排名榜設置,使用SimpleAdapter類完成排名榜布局,并降序排列。

DatabaseHelperdbHelper = newDatabaseHelper(ScoreList.this,\"Horse_db\");

SQLiteDatabasedb = dbHelper.getReadableDatabase();

Cursor cursor = db.query(\"user\", new String[]{\"winCount\",\"name\"}, 1,1,1, 1, \"winCount desc\",\"10\");

while(cursor.moveToNext())

{

String name = cursor.getString(cursor.getColumnIndex(\"name\"));

intwinCounts = cursor.getInt(cursor.getColumnIndex(\"winCount\"));

}

四、結論

基于Android系統平臺的賽馬游戲通過對UI及數據庫等多方面的設置,完成了手機終端游戲的設計與開發,該游戲簡單易學,運行穩定,節省資源,便于單人或多人娛樂,有一定的娛樂價值。

參考文獻:

[1]李華明.Android游戲編程之從零開始[M].北京:清華大學出版社,2011:118-119.

[2]吳亞峰,蘇亞光.Android游戲開發大全[M].北京:人民郵電出版社,2012:325-371.

[3]趙宏偉.Android NDK開發環境實現與應用[J].電腦知識與技術,2010,6(35):10055-10060.

[4]埃史爾,陳昊鵬.Java編程思想[M].機械工業出版社,2007:200-213.

[5]宋瑾鈺,俞成海,孫樹森.基于項目引導——任務驅動的Java手機游戲開發教學模式研究[J].中國校外教育,2012(3).

主站蜘蛛池模板: 激情六月丁香婷婷| 亚洲swag精品自拍一区| 伊人久久大香线蕉成人综合网| 国产精品一线天| 国产精品自拍合集| 99久久精品无码专区免费| 中文国产成人精品久久一| 色综合成人| 国产高潮流白浆视频| 久久精品欧美一区二区| 99热这里只有精品在线播放| 在线a网站| 国产系列在线| 国产免费羞羞视频| 在线免费不卡视频| 亚洲人成日本在线观看| 成人福利在线免费观看| 麻豆国产精品视频| 欧美 国产 人人视频| 一级毛片在线播放| 一级毛片不卡片免费观看| 日韩资源站| 久久6免费视频| 日韩最新中文字幕| 欧美激情第一区| 国模极品一区二区三区| 国产成人超碰无码| 依依成人精品无v国产| 色精品视频| 美女潮喷出白浆在线观看视频| 久热中文字幕在线观看| 2022国产无码在线| 伊人久久福利中文字幕| 日韩视频福利| 亚洲色无码专线精品观看| 亚洲欧美激情小说另类| 亚洲成人高清在线观看| 精品国产自在在线在线观看| 91精品网站| 亚洲美女久久| 99久久人妻精品免费二区| 中文无码伦av中文字幕| 最新国语自产精品视频在| 一级做a爰片久久毛片毛片| 国产91透明丝袜美腿在线| 欧美综合激情| 欧美亚洲国产日韩电影在线| 欧美在线导航| 波多野结衣视频网站| 欧美成人午夜影院| 国产不卡网| 呦女精品网站| 国产成人永久免费视频| 福利一区三区| 日韩无码视频播放| 国产一二三区视频| 九九九久久国产精品| 91人人妻人人做人人爽男同| 欧美综合中文字幕久久| 无码高潮喷水专区久久| 日本人妻一区二区三区不卡影院 | 欧美不卡在线视频| 91精品情国产情侣高潮对白蜜| 亚洲毛片网站| 香蕉eeww99国产精选播放| 综合五月天网| 亚洲自拍另类| 视频在线观看一区二区| 久久精品娱乐亚洲领先| 久久精品无码中文字幕| 国产精品真实对白精彩久久| 亚洲天堂网在线观看视频| 欧美精品另类| 日本一区二区三区精品视频| 国产精品一区二区不卡的视频| 国产精品深爱在线| 99国产精品一区二区| 好久久免费视频高清| 国产亚洲欧美在线人成aaaa| 国产成人精品男人的天堂| 亚洲中文久久精品无玛| 67194亚洲无码|