日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Android實現掃雷小游戲

瀏覽:32日期:2022-09-21 17:16:18

本文實例為大家分享了Android實現掃雷小游戲的具體代碼,供大家參考,具體內容如下

先看效果圖:

初始游戲界面:

Android實現掃雷小游戲

翻開塊和標記塊界面:

Android實現掃雷小游戲

游戲結束界面:

Android實現掃雷小游戲

菜單界面:

Android實現掃雷小游戲

更換難度界面:

Android實現掃雷小游戲

查看游戲記錄界面:

Android實現掃雷小游戲

代碼分析

Block.java

這部分代碼實現的是游戲界面的板塊

設置四個變量來記錄當前塊是否被翻開,當前塊是否是地雷,是否把當前快標記為地雷(也就是插旗子),當前塊周圍的地雷數量。

關鍵部分代碼:

//設置翻開狀態public void setNumberOfSurroundingMines(int number) { this.setBackgroundResource(R.drawable.selected);//設置翻開背景圖 updateNumber(number);//設置周圍雷數}//添加雷塊標識public void setMineIcon() { this.setBackgroundResource(R.drawable.dl);}//添加標記標識public void setFlagIcon(boolean enabled) { if (!enabled) { this.setBackgroundResource(R.drawable.hq); } else { this.setTextColor(Color.BLACK); }}//清除所有標記public void clearAllIcons() { this.setText(''); this.setTextColor(R.drawable.unselected);}private void setBoldFont() { this.setTypeface(null, Typeface.BOLD);}//翻開方塊public void OpenBlock() { if (!isCovered) { return; } isCovered = false; //如果為雷設置地雷標識 if (hasMine()) { setMineIcon(); } else { setNumberOfSurroundingMines(numberOfMinesInSurrounding);//根據周圍雷數設置翻開狀態及顯示數字 }}

LevelActivity

這部分把玩家選擇的難度easy或hard傳遞給MenuActivity

package com.example.saolei;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;public class LevelActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_level); } /*根據不同難度返回相應參數*/ public void Easy(View view) { Intent data = new Intent(); data.putExtra('result', 'easy'); setResult(2, data); finish(); } public void Hard(View view) { Intent data = new Intent(); data.putExtra('result', 'hard'); setResult(2, data); finish(); } public void Return(View view) { Intent data = new Intent(); data.putExtra('result', ''); setResult(2, data); finish(); }}

MenuActivity

這部分是菜單頁面,包括難度選擇和游戲記錄的查看

這里接收難度選擇界面傳回的參數并將其傳回主界面處理

package com.example.saolei;import androidx.appcompat.app.AlertDialog;import androidx.appcompat.app.AppCompatActivity;import android.content.Intent;import android.os.Bundle;import android.view.View;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import java.io.InputStreamReader;import java.util.Scanner;public class MenuActivity extends AppCompatActivity { String t = 'easy'; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_menu); } @Override //接收難度界面傳回的參數并將其傳回主界面處理 protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (resultCode == 2) { Intent level = new Intent(); t = data.getStringExtra('result'); level.putExtra('result', t); setResult(1, data); finish(); } } //點擊新游戲按鈕,將結果傳回主界面 public void NewGame(View view) { Intent data = new Intent(); data.putExtra('result', 'newgame'); setResult(1, data); finish(); } //點擊改變難度按鈕,啟動難度選擇界面 public void ChangeLevel(View view) { Intent level = new Intent(MenuActivity.this, LevelActivity.class); startActivityForResult(level, 2); } //點擊游戲記錄按鈕,顯示記錄 public void Record(View view) { String filename = getExternalCacheDir().getAbsolutePath() + '/gamerecord.txt';//文件路徑 File file = new File(filename); Scanner inputStream = null; FileInputStream fis = null; BufferedReader br = null; String str; String message = ' ' + '級別' + ' ' + '勝負' + ' ' + '時間n'; //若文件不存在,顯示暫無記錄 if (!file.exists()) { new AlertDialog.Builder(this) .setMessage('暫無記錄!') .setNegativeButton('確定', null) .create().show(); } else { try {//讀取文件記錄并生成對話框顯示inputStream = new Scanner(new FileInputStream(filename));int i = 1;fis = new FileInputStream(filename);br = new BufferedReader(new InputStreamReader(fis));while ((str = br.readLine()) != null) { message = message + (i + '. ' + str + 'n'); i++;}new AlertDialog.Builder(this) .setMessage(message) .setNegativeButton('確定', null) .create().show();fis.close();br.close(); } catch (FileNotFoundException e) {e.printStackTrace(); } catch (IOException e) {e.printStackTrace(); } finally {inputStream.close(); } } } //點擊返回按鈕,回傳結果到主界面 public void Return1(View view) { Intent data = new Intent(); data.putExtra('result', 'start'); setResult(1, data); finish(); }}

MainActivity

這部分是主體內容,包括游戲初始化,雷區的創建,游戲勝負的判定,游戲結果的存檔等

這部分比較長,就不貼代碼了

最后附上完整項目鏈接

更多有趣的經典小游戲實現專題,分享給大家:

C++經典小游戲匯總

python經典小游戲匯總

python俄羅斯方塊游戲集合

JavaScript經典游戲 玩不停

java經典小游戲匯總

javascript經典小游戲匯總

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Android
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
人在线成免费视频| 成人亚洲欧美| 视频精品一区二区| 99pao成人国产永久免费视频| 久久国产电影| 亚洲欧洲日本mm| 亚洲综合欧美| 亚洲一区二区日韩| 亚洲资源网站| 欧美精品中文| 精品国产欧美日韩| 国产精品蜜芽在线观看| 激情国产在线| 中文字幕色婷婷在线视频| 日韩在线精品| 亚洲自拍另类| 天堂av一区| 麻豆91在线播放| 精品成人免费一区二区在线播放| 激情综合在线| 亚洲精品影视| 久草精品视频| 国产麻豆一区二区三区| 精品视频亚洲| 特黄毛片在线观看| 久久激情婷婷| 久久在线电影| 亚洲综合二区| 日韩在线电影| 精品国产一区二区三区性色av| 欧美13videosex性极品| 亚洲欧美日本视频在线观看| 天海翼精品一区二区三区| 国产精品777777在线播放| 日韩毛片视频| 久久国产精品久久久久久电车 | 日韩av一级| 亚洲欧美高清| 久久永久免费| 亚洲一区二区三区高清不卡| 欧美日韩一区二区三区不卡视频 | 激情六月综合| 青青草91视频| 久久国产免费| 青青草精品视频| 日韩欧美自拍| 午夜亚洲福利| 蜜桃精品在线| 欧美一级网站| 欧美xxxx中国| 亚洲欧美日韩国产| 中文字幕av一区二区三区人| 精品免费av| 亚洲综合二区| 精品视频97| 国产精品美女久久久浪潮软件| 国产免费播放一区二区| 99tv成人| 国产精品白浆| 久久国产精品亚洲77777| 国产一区不卡| 日韩一区二区三区免费视频 | 亚洲不卡系列| 欧美久久精品| 免费久久精品| 精品国产一区二区三区噜噜噜| 国产亚洲精品久久久久婷婷瑜伽| 久久精品一本| 日韩精品中文字幕一区二区| 久久精品国产亚洲夜色av网站| 国产精品自在| 亚洲麻豆一区| 国产在线欧美| 黄色网一区二区| 日本不卡一区二区三区| 免费视频亚洲| 岛国av免费在线观看| 欧美一区激情| 日韩一级网站| 亚洲免费毛片| 蜜桃视频免费观看一区| 免费一二一二在线视频| 久久这里只有| 久久国产麻豆精品| 亚洲一区国产| av在线日韩| 精品三级久久久| 国产一区 二区| 亚洲aa在线| 欧美资源在线| 女主播福利一区| 日韩精品欧美| 久久久久免费| 国产精品99久久免费观看| 日韩精品一区二区三区中文| 亚洲高清激情| 久久精品青草| 五月激情久久| 高清av一区| 久久精品国产99国产精品| 国产一卡不卡| 欧美一区自拍| 日韩高清不卡在线| 亚洲精品亚洲人成在线观看| 国产精品日韩欧美一区| 亚洲午夜电影| 久久天堂成人| 久久久蜜桃一区二区人| 日韩影院二区| 中文另类视频| 黄色aa久久| 五月天av在线| 欧美亚洲日本精品| 国产精品久久久久久久免费观看 | 国产一区二区视频在线看| 国产精品麻豆成人av电影艾秋| 日韩高清不卡一区| 91大神在线观看线路一区| 欧美精品中文字幕亚洲专区| 日韩av资源网| 日本少妇精品亚洲第一区| 爽好多水快深点欧美视频| 日韩亚洲在线| 亚洲精品麻豆| 久久激情综合网| 国产精品v一区二区三区| 久久av资源| 国产96在线亚洲| 日韩电影免费网站| 欧美日韩中文字幕一区二区三区| 欧美综合另类| 久热精品在线| 日韩高清在线观看一区二区| 国产日韩一区二区三区在线| 国产精品99久久免费观看| 精品国产美女a久久9999| 美女高潮久久久| av资源新版天堂在线| 91精品国产91久久久久久黑人| 午夜精品网站| 亚洲a成人v| 欧美激情福利| 国产成人精品福利| 久久久影院免费| 日韩制服丝袜先锋影音| 日本午夜精品| 日韩av在线中文字幕| 少妇久久久久| 男人操女人的视频在线观看欧美| 亚洲乱码久久| 久久精品一区| 电影天堂国产精品| 亚洲中字黄色| 国产精品中文字幕亚洲欧美| 国内精品亚洲| 欧美在线资源| 欧美一区影院| 日韩中文在线播放| 免费成人在线观看| 久久中文欧美| 在线亚洲欧美| 欧美视频久久| 亚洲福利专区| 国产日韩一区二区三区在线 | 久久精品一区二区三区中文字幕| 亚洲天堂免费电影| 亚洲人妖在线| 国内精品伊人| 国产精品美女| 麻豆国产精品一区二区三区| 久久久久久久久久久妇女| 亚洲人亚洲人色久| 国产成人免费| 日韩影院免费视频| 久久精品国产在热久久| 99国产精品| 国产精品一级| 欧美日韩中文一区二区| 日韩精品亚洲专区| 日韩欧美网址| 97久久精品| 久久亚洲国产| 国产精品毛片久久久| 91精品电影| 狂野欧美性猛交xxxx| 午夜在线一区| 国产成人精品一区二区免费看京| 99视频+国产日韩欧美| 开心激情综合| 免费看欧美美女黄的网站| 国产传媒av在线| 亚洲精品欧洲| 欧美/亚洲一区| 成人台湾亚洲精品一区二区| 亚洲丝袜啪啪| 欧美日韩尤物久久| 久久不见久久见免费视频7| 在线综合亚洲| 欧美日韩视频网站| 国产精品a久久久久|