基于Android的趣味拼圖的實現(xiàn)_第1頁
基于Android的趣味拼圖的實現(xiàn)_第2頁
基于Android的趣味拼圖的實現(xiàn)_第3頁
基于Android的趣味拼圖的實現(xiàn)_第4頁
基于Android的趣味拼圖的實現(xiàn)_第5頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、 基于Android的趣味拼圖的實現(xiàn) 陸毅軍 黃俊 彭巧珍【Summary】本文基于Android操作系統(tǒng),根據(jù)軟件工程的設計思想,以Androidstudio等為開發(fā)工具,設計出一款能夠開發(fā)青少年智力并對其進行海洋生物知識科普的拼圖游戲。本游戲包括游戲設置界面,海洋生物圖片導讀及選擇頁面,并能顯示玩家的當前游戲所用時間和步數(shù)。本軟件以培養(yǎng)興趣及科普知識為主?!綤ey】Android 拼圖游戲 知識科普一、引言目前隨著智能手機的全面深入普及,青少年也成為手機app開發(fā)的新興對象。對于青少年而言,寓教于樂的app非常有助于其的智力開發(fā)與興趣培養(yǎng)。實現(xiàn)一款海洋生物科普類的趣味拼圖app便是本次的課

2、題。二、需求分析在這個迅猛發(fā)展的互聯(lián)網(wǎng)時代,智能手機的普及已經(jīng)涉及青少年,對此我們設想設計一款能讓青少年在游戲過程中學到科普知識并且得到智力開發(fā)與興趣培養(yǎng)的app。由此,我們設計了此款趣味拼圖,使青少年在游戲的過程中學習到海洋生物科普知識。此款app面向的用戶為7歲到14歲間的青少年,其基本功能:(1)能對一些海洋生物的基本圖片進行瀏覽。(2)展示頁面根據(jù)海洋生物的棲息深度進行不同的歸類。(3)當點擊對應的海洋生物的圖片后,將進入新的頁面,此頁面將展示此海洋生物的相關科普信息,青少年可以自由瀏覽并進行記憶熟悉。(4)可以根據(jù)情況進行游戲困難度的選擇。三、系統(tǒng)設計與實現(xiàn)(一)游戲設置用戶通過游戲

3、設置按鈕進入后,可選擇難度設置和背景音樂的設置,難度設置分為3X3、4X4、5X5等適應不同層次用戶的選擇,給用戶帶來不同的難度挑戰(zhàn)。背景音樂可以試聽,在試聽后選擇自己喜歡的音樂作為背景音樂。(二)知識展示用戶在海洋生物分類中選擇了自己感興趣的生物后,點擊圖片即可跳轉到有關該動物的科普知識展示頁面,用戶可以在這個頁面自由瀏覽或者記錄,了解和學習相關的知識。(三)拼圖游戲用戶瀏覽完科普知識后可選擇進入游戲,游戲環(huán)節(jié)中的圖片就是我們知識展示頁面中的生物圖片,而用戶進入游戲后圖片已被智能分塊,在游戲過程中用戶發(fā)揮自己的智慧,通過移動方塊,將智能分塊并打亂的圖片拼成它原來的模樣即為成功,當然在游戲過程

4、中可點擊查看原圖協(xié)助游戲。(四)核心功能/判斷分割的數(shù)據(jù)是否能還原成原圖public static boolean canSolve(List data) /獲取空格Idint blankId = mBlankItemBean.getmItemId();/ 可行性原則if (data.size() % 2 = 1)return getInversions(data) % 2 = 0;else / 從底往上數(shù),空格位于奇數(shù)行if (blankId - 1) / PuzzleActivity.TYPE) % 2 = 1)return getInversions(data) % 2 = 0;else

5、 / 從底往上數(shù),空位位于偶數(shù)行return getInversions(data) % 2 = 1;/計算倒置和算法public static int getInversions(List data) int inversions = 0;int inversionCount = 0;for (int i = 0; i data.size(); i+) for (int j = i + 1; j data.size(); j+) int index = data.get(i);if (data.get(j) != 0 & data.get(j) index)inversionCount+;i

6、nversions += inversionCount;inversionCount = 0;return inversions;/判斷拼圖是否成功復原public static boolean isSuccess() for (ImageItemBean tempBean : mItemBeans) if(tempBean.getmItemId() != 0 & tempBean.getmItemId() = tempBean.getmBitmapId()continue;else if(tempBean.getmBitmapId() = 0 &tempBean.getmItemId() =

7、 PuzzleActivity.TYPE * PuzzleActivity.TYPE)continue;else return false;return true;四、相關知識核心算法:計算倒置和算法。拼圖的實現(xiàn)是將一張完整的圖片切成n等分,如果隨機切割排列會導致圖片無法還原,使用計算倒置和算法得到圖片生成的情況,然后判斷拼圖是否有解。五、小結本文利用Android studio 等開發(fā)工具設計了一款立足于青少年智力開發(fā)及海洋知識科普的趣味拼圖游戲。由于經(jīng)驗不足,該應用仍存在一些不足的地方,功能方面還可以后續(xù)拓展。Reference:1郭霖.第一行代碼Android(第2版)人民郵電出版社,2016.2李興華.名師講壇Java開發(fā)實戰(zhàn)經(jīng)典(第2版),2018.基金項目:課題資助:南昌航空大學第14屆“三小”課題。商情2020年35期商

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論