freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于android的中國(guó)象棋本科畢業(yè)設(shè)計(jì)(文件)

 

【正文】 d 構(gòu)成威脅,但至少也會(huì)受到一些影響。從架構(gòu)圖看(如圖 ), Android 結(jié)構(gòu)分為四個(gè)層,從高層到低層分別是應(yīng)用層( Application Level) ,應(yīng)用框架層 ( Application Frameworks) ,系統(tǒng)運(yùn)行庫(kù)層 ( Libraries and Android Runtime Level) 和 Linux內(nèi)核層 ( Linux Kernel Level) 。 ( 2)應(yīng)用框架層 ( Application Frameworks) : 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 7 這是 Android 系統(tǒng)中最核心的部分,它集中體現(xiàn)了 Android 系統(tǒng)的設(shè)計(jì)思想。開(kāi)發(fā)過(guò)程中常用到的基本框架組件如下: 活動(dòng)管理( Activity Manager) , Activity 管理著應(yīng)用程序的生命周期,并且控制著應(yīng)用的導(dǎo)航, 扮演控制器的角色。 內(nèi)容提供者 ( Content Providers) ,聽(tīng)起來(lái)有點(diǎn)抽象,通俗的理解 Content Provider 就是提供一 種服務(wù),通過(guò)這種服務(wù)應(yīng)用程序之間可以實(shí)現(xiàn)數(shù)據(jù)的互相 訪(fǎng)問(wèn)和共享,比如通訊錄的存儲(chǔ)就使用了這種服務(wù),其它應(yīng)用也可以訪(fǎng)問(wèn)通訊錄中存儲(chǔ)的聯(lián)系人信息。 ( 3)系統(tǒng)運(yùn)行庫(kù)層 ( Libraries and Android Runtime Level) : 該層,是一些 C/C++庫(kù),來(lái)提供底層的支持。 JAVA 核心類(lèi)庫(kù)涵蓋了 Android 框架層和應(yīng)用層所要用到的基礎(chǔ) Java 庫(kù),包括 Android 對(duì)象庫(kù),文件管理庫(kù),網(wǎng)絡(luò)通信庫(kù)等。在軟件棧視角看, Linux 內(nèi)核就是 “硬件 ”。 Android 中, Activity 是所有程序的根本,是應(yīng)用程序的顯示層,所有程序的流程都運(yùn)行在 Activity 之中 , Activity 可以算是開(kāi)發(fā)者遇到的最頻繁,也是 Android 當(dāng)中最基本的模塊之一。 Activity使用 Views 去構(gòu)建 UI 來(lái)顯示信息和響應(yīng)用戶(hù)的行為。 Service 是一種程序,它可以運(yùn)行很長(zhǎng)時(shí)間,但是它卻沒(méi)有用戶(hù)界面。 Content Provider 用來(lái)管理和共享應(yīng)用程序的數(shù)據(jù)庫(kù)。在 Android 中, Broadcast 是一種廣泛運(yùn)用的在應(yīng)用程序之間傳輸信息的機(jī)制。其中 JDK 的的安裝為: ( 1)下載最新版本的 JDK,下載地址為: 可根據(jù)自己的系統(tǒng)需求選擇相應(yīng)下載 [1]。 eclipse 的下載與使用 eclipse 的使用方法為: ( 1)下載最新版本的 eclipse,下載地址為: 進(jìn)入下載頁(yè)面后,選擇 “Eclipse IDE for java EE Developers ”進(jìn)行下載 [5]。 圖 Android SDK 的管理和更新 這樣 Android 的開(kāi)發(fā)工具的安裝就全部完成了,即現(xiàn)在所有的準(zhǔn)備工作就已經(jīng)做好了,現(xiàn)在只需在 eclipse 里面新建工程,然后在里面開(kāi)發(fā)就行了。寫(xiě)好之后可以點(diǎn)擊 “Next”按鈕進(jìn)行其他的配置,也可以直接點(diǎn)擊 “Finish”按鈕以完成工程的建立。 一般而言,一個(gè)應(yīng)用程序開(kāi)發(fā)好之后,都需要把他弄到移動(dòng)設(shè)備上進(jìn)行安裝測(cè)試,那么應(yīng)用程序怎樣把他弄到手機(jī)上呢?方法其實(shí)很簡(jiǎn)單,只需要打開(kāi)自己手機(jī)的開(kāi)發(fā)人員調(diào)試功能,然后將其用 USB 連接到電腦上,這是你在用剛才同樣的方法運(yùn)行程序時(shí),在運(yùn)行之前就可以選擇你自己的移動(dòng)設(shè)備進(jìn)行運(yùn)行。中間第五、第六兩橫線(xiàn)之間未畫(huà)豎線(xiàn)的空白地帶,稱(chēng)為 河界 ,整個(gè)棋盤(pán)就以 河界 分為相等的兩部分;兩方將帥坐鎮(zhèn)、畫(huà)"米 字方格的地方,叫做 九宮 。中國(guó)象棋的規(guī)則和判定方法為: ( 1)對(duì)局時(shí),由執(zhí)紅棋的一方先走,雙方輪流各走一著,直至分出勝、負(fù)、和,對(duì)局即終了。它只能在 九宮 之內(nèi)活動(dòng),可上可下,可左可右,每次走動(dòng)只能按豎線(xiàn)或橫線(xiàn)走動(dòng)一格。 相(象):相(象)的主要作用是防守,保護(hù)自己的帥(將)。因此,一車(chē)可以控制十七個(gè)點(diǎn),故有 一車(chē)十子寒 之稱(chēng)。如果在要去的方向有別的棋子擋住,馬就無(wú)法走過(guò)去,俗稱(chēng) 蹩馬腿 。 ( 4)勝負(fù)的判定 對(duì)局時(shí) ,一方出現(xiàn)下列情況之一 ,就算輸棋 ,對(duì)方得勝 : ① 帥 (將 )被對(duì)方 將死 ,即被對(duì)方將軍卻無(wú)法應(yīng)將; ② 帥 (將 )被 將軍 ,無(wú)法避免地同對(duì)方將 (帥 )直接對(duì)面; 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 15 ③ 被 困斃 ,即雖未被對(duì)方將軍,本方卻已無(wú)棋可走動(dòng); ④ 封棋著法有誤; ⑤ 走棋違犯禁例 ,應(yīng)當(dāng)變著而不變,即一方長(zhǎng)將不變,長(zhǎng)將一方算輸; ⑥ 在同一局棋中 ,單方面出現(xiàn)第三次 違例 ; ⑦ 自己宣布認(rèn)輸; ⑧ 因違犯紀(jì)律被判輸棋。帥和將都是是雙方的首腦和指揮者,同時(shí)下棋雙方的最主要目標(biāo)也是將死對(duì)方的帥或?qū)?。士(仕)的走?dòng)范圍武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 16 也是在九宮格之內(nèi),但士(仕)只能走斜線(xiàn),不能橫豎走,而且每次也只能走一步,所以,由圖可以看出,士(仕)的走動(dòng)范圍實(shí)際上就只有 5 個(gè)位置。 ( 4)馬的走法: 圖 馬的走法 馬的走法如圖 所示。 ( 5)車(chē)的走法: 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 17 圖 車(chē)的走法 如圖 所示,在整個(gè)中國(guó)象棋中,車(chē)的走法是最自由的,同時(shí)也是殺傷力最大的。但在吃子時(shí),炮吃子需要在自己和被吃子的中間有一個(gè)棋子作為炮架子時(shí),才能夠轟掉對(duì)方的棋子,沒(méi)有這個(gè)炮架子時(shí)則只能走棋不能吃子,當(dāng)然這個(gè)炮架子可以是對(duì)方的棋子,也可以是自己的棋子。在過(guò)河前,兵(卒)只能向前直走,而且只能走一步,還不能夠后退。 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 19 4 中國(guó)象棋軟件的主要功能和界 面布局 中國(guó)象棋軟件實(shí)現(xiàn)的主要功能 此次設(shè)計(jì)的中國(guó)象棋為人人對(duì)弈版,而且是單屏設(shè)計(jì),所以所要實(shí)現(xiàn)的功能比較簡(jiǎn)單,設(shè)計(jì)也不是很復(fù)雜。 在 Android 軟件開(kāi)發(fā)中,界面美化也是很重要的,這是體現(xiàn)人性化的一點(diǎn)。 設(shè)計(jì)的主要實(shí)現(xiàn)的功能如下: ( 1)進(jìn)入軟件,首先有歡迎提示,這是體現(xiàn)人性化細(xì)節(jié)的一方面。 ( 4)選好 “紅方 ”或者 “黑方 ”之后,即正式的進(jìn)入到了游戲當(dāng)中。在 Android 開(kāi)發(fā)中,我們可以添加一個(gè) “TextView”文本框,并將此文本框的內(nèi)容設(shè)置成循環(huán)滾動(dòng)的形式來(lái)達(dá)到顯示歡迎提示內(nèi)容,其主要代碼如下: ( 2)設(shè)置 “中國(guó)象棋 ”、 “幫助 ”、 “退出 ”按鈕?,F(xiàn)在,就建立一個(gè) “中國(guó)象棋人人對(duì)弈 ”的工程,來(lái)實(shí)現(xiàn)中國(guó)象棋的設(shè)計(jì)。建立好之后的工程如圖 所示: 圖 建立好之后的工程的各個(gè)類(lèi)和模塊 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 25 工程模塊的介紹 各個(gè)類(lèi)主要實(shí)現(xiàn)的功能 在軟件的開(kāi)發(fā)中,一個(gè)軟件需要實(shí)現(xiàn)多個(gè)不同功能,為了便于開(kāi)發(fā)和檢查錯(cuò)誤,增強(qiáng)程序的可移植性,通常我們會(huì)把每一個(gè)功能放在一個(gè)類(lèi)中或者一個(gè)包中。一是在進(jìn)入軟件之后點(diǎn)擊 “中國(guó)象棋 ”時(shí),會(huì)出現(xiàn)選擇項(xiàng),是選擇紅方還是黑方,然后選擇好之后按 menu鍵進(jìn)行游戲,然后他的功能就是選擇功能和menu 鍵的功能;另一個(gè)功能是進(jìn)行游戲的初始化。該類(lèi)為棋子的一個(gè)走法類(lèi),包含是什么棋子(自己的或者是對(duì)方的),起始點(diǎn)的位置,目標(biāo)點(diǎn)的位置,以及估值時(shí)所用到的 score。該類(lèi)的主要代碼詳見(jiàn)附錄。該類(lèi)是走法的核心類(lèi),中國(guó)象棋中的 7 類(lèi)棋子,共 32枚,都在這個(gè)類(lèi)中明確定義了相關(guān)的走法,不僅如此,他還定義了該棋子是對(duì)方的還是自己的,以及規(guī)定了每一方的地盤(pán),即以河界為線(xiàn)。該目錄在工程中是不需要我們編寫(xiě)的,但他在 Android 工程中尤為關(guān)鍵。 ( 2) bin目錄。這是存放軟件所需要用到的一些資源文件以及軟件的一些布局文件。每一個(gè)棋子都有不同的走法和移動(dòng)范圍,那么下面就讓我們來(lái)詳細(xì)闡述一下他們的實(shí)現(xiàn)方法。上面這種情況是選擇黑方之后,把黑方的棋子置于下方。 由圖 ,每一個(gè)數(shù)字所對(duì)應(yīng)的棋子為: 1——紅帥、 2——紅車(chē)、 3——紅馬、 4——紅炮、 5——紅士、 6——紅相、 7——紅兵、 8——黑將、9——黑車(chē)、 10——黑馬、 11——黑炮、 12——黑仕、 13——黑象、 14——黑卒。棋盤(pán)和棋子的繪制也是在 GameView 類(lèi)中實(shí)現(xiàn)的,棋盤(pán)和棋子的具體繪制過(guò)程如下 [10]: 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 29 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 30 棋子的算法實(shí)現(xiàn) 棋子的走法規(guī)則是整個(gè)游戲玩法的核心,他定義了中國(guó)象棋的走法規(guī)則,該規(guī)則在 “Rule”類(lèi)中實(shí)現(xiàn)。 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 32 6 問(wèn)題與軟件的改進(jìn) 遇到的問(wèn)題與解決方法 此次的設(shè)計(jì),是關(guān)于 Android 軟件開(kāi)發(fā)的,以前基本上沒(méi)有關(guān)于這方面的學(xué)習(xí)和應(yīng)用,所以說(shuō)在做的過(guò)程當(dāng)中遇到了很多的問(wèn)題,但通過(guò)自己不斷的努力,很多問(wèn)題都迎刃而解了。通過(guò)與別人交流之后,知道了出現(xiàn)這個(gè)問(wèn)題原因是標(biāo)志變量沒(méi)有設(shè)置對(duì)。出現(xiàn)這個(gè)問(wèn)題的原因有多種,可能是 Android 的 SDK 是丟失,或者沒(méi)有導(dǎo)入 import , 亦 或者是布局文件出錯(cuò)或使用了非法的。 就是說(shuō)點(diǎn)擊屏幕后,要判斷現(xiàn)在輪到哪方走棋,所以要加一個(gè)標(biāo)志變量, 其次就是判斷自己手指所點(diǎn)的位置,看是不是那一方的棋子,是就可以走棋。出現(xiàn)這個(gè)問(wèn)題分關(guān)鍵是一些函數(shù)的調(diào)用不對(duì),特別是在 “中國(guó)象棋 ”這個(gè)按鈕上,點(diǎn)擊 “中國(guó)象棋 ”后需要跳到第二個(gè)界面進(jìn)行選擇,在不同界面或者屏幕之間進(jìn)行跳轉(zhuǎn)的話(huà)就需要新建一個(gè)信使 “Intent”, Intent 在 Android 開(kāi)發(fā)中起著非常重要的作用,他是 Android 系統(tǒng)中的一個(gè)載體或者是一個(gè)信使,只有通過(guò)信使 “Intent”才能在不同的界面之間進(jìn)行跳轉(zhuǎn)和切換 [11]。每一步棋子所走的算法規(guī)則為(以紅方走棋為例): 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 31 關(guān)于每一個(gè)棋子的走法規(guī)則實(shí)現(xiàn)詳見(jiàn)代碼附錄 。 棋子行走于棋盤(pán)上,但是,并不是棋盤(pán)上的所有地方都能走,棋子能不能走?武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 28 怎樣走,其判斷的算法為(流程圖如圖 ): ( 1)點(diǎn)擊棋盤(pán)時(shí),先判斷是紅方還是黑方走棋; ( 2)然后再判斷點(diǎn)擊棋盤(pán)的時(shí)候是否選中棋子,若沒(méi)有,則選中棋子; ( 3)選中棋子之后,在判斷所選棋子是紅方的棋子還是黑方的棋子; ( 4)若選中的是自己的棋子,則將光標(biāo)移動(dòng)到該棋子上以提示玩家; ( 5)點(diǎn)擊屏幕走動(dòng)棋子,在走動(dòng)時(shí)先判斷所點(diǎn)擊位置是否符合走動(dòng)規(guī)則,若不符合則不能走動(dòng),或者所走位置出了棋盤(pán)則也 不能走動(dòng); ( 6)若符合棋子走動(dòng)規(guī)則,則需判定該位置是否有棋子,若沒(méi)有棋子,則能走動(dòng); ( 7)若該位置上有棋子,則要判斷該棋子是自己棋子還是對(duì)方棋子,若是自己棋子,則該位置上不能走動(dòng),若是對(duì)方棋子則可以替換掉該棋子,即吃子; ( 8)吃子之后需判斷該棋子是否為帥或者將,若是帥或者將,則游戲結(jié)束。 ( 2)棋子 從圖 和圖 中可以看出,上面其實(shí)就是一個(gè)虛擬的棋盤(pán),然后上面放上了虛擬的棋子,即用不同的數(shù)字代表各個(gè)不同的棋子 。一般來(lái)說(shuō),棋子都是放在棋盤(pán)橫豎的交叉點(diǎn)上,所以我們可以用一組二維數(shù)組來(lái)實(shí)現(xiàn)棋盤(pán)的設(shè)計(jì) [9]。 ( 4)還有 和其他一些文件都是關(guān)于 Android 的版本的配置文件。 ( 3) res 目錄。比較特殊的一點(diǎn) 是,他所定義的所有東西,他會(huì)生成一個(gè) “.R”的文件存放,而且是系統(tǒng)自動(dòng)生成的,不需要用戶(hù)進(jìn)行任何修改。 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 26 工程中其他模塊的介紹 在工程的框架圖中我們看到,除了有幾個(gè)類(lèi)外,還有其他的一些模塊,那么,這些模塊的具體作用又是什么呢?下面我們?cè)敿?xì)來(lái)介紹。顧名思義,此類(lèi)就是定義了關(guān)于中國(guó)象棋的規(guī)則類(lèi)。該類(lèi)是整個(gè)程序的核心類(lèi),是整個(gè)主游戲的界面,包括中國(guó)象棋的棋盤(pán)、棋子、還有勝利時(shí)的顯示,以及玩家和對(duì)家的選 擇和切換等等,該界面繼承自 SurfaceView 并實(shí)現(xiàn)了 接口,其中包含了一個(gè)刷幀的線(xiàn)程類(lèi)。詳細(xì)代碼見(jiàn)附錄。在此次工程中,各個(gè)類(lèi)的主要功能為: ( 1) Chess01Activity 類(lèi)。此為游戲在開(kāi)始前所必須實(shí)現(xiàn)的功能。其實(shí)現(xiàn)代碼為: 武漢科技大學(xué)本科畢業(yè)設(shè)計(jì) 22 中國(guó)象棋選項(xiàng)界面 在第一個(gè)界面中,點(diǎn)擊 “中國(guó)象棋 ”即進(jìn)入第二個(gè)選擇界面,在這里,用戶(hù)可以選擇操作紅方還是黑方,這樣我們可以添加兩個(gè) RadioButton來(lái)實(shí)現(xiàn)兩者的選擇功能,其主要的代碼為: 界面的運(yùn)行效果圖 ,開(kāi)始?xì)g迎界面如圖 所示,幫助窗口如圖 所示,退出選項(xiàng)如圖 所示,開(kāi)始前選擇界面如圖 所示。 ( 5)當(dāng)游戲結(jié)束,即吃掉了對(duì)方的帥(將)時(shí),就有彈出
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1