1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > android扫雷论文 基于ANDROID的简单扫雷小游戏论文.doc

android扫雷论文 基于ANDROID的简单扫雷小游戏论文.doc

时间:2020-10-19 09:12:57

相关推荐

android扫雷论文 基于ANDROID的简单扫雷小游戏论文.doc

基于ANDROID的简单扫雷小游戏论文

大庆师范学院

《Android应用设计》

课程设计报告

题目:基于android的简单扫雷小游戏

专业班级:计算机科学与技术(嵌入式方向)

设 计 者: 王珂:2

王盼盼:3

赵玉莹:3

刘阳:4

李若男:5

指导老师: 许有军

设计时间:-(1)

报告完成日期年月4号宋体,1.5倍行距)在此说明TableLayout(MineField),用来显示扫雷区的框架。

程序的class类:

Blocked.Java和MinesweeperGame.java

程序的主要函数:

游戏开始函数:startNewGame();

游戏显示函数:showMineFiled();

创建新游戏函数:createMineFiled();

完成游戏函数:finishGame();

设置时间函数:setmines();

玩家胜利函数:winGame();

玩家失败函数:endExistingGame();

程序详解

(1)游戏开始函数startNewGame

private void startNewGame()

{

// plant mines and do rest of the calculations

createMineField();

// display all blocks in UI

showMineField();

minesToFind = totalNumberOfMines;

isGameOver = false;

secondsPassed = 0;

}

private void showMineField()

{

// remember we will not show 0th and last Row and Columns

// they are used for calculation purposes only

for (int row = 1; row < numberOfRowsInMineField + 1; row++)

{

TableRow tableRow = new TableRow(this);

tableRow.setLayoutParams(new LayoutParams((blockDimension + 2 * blockPadding) * numberOfColumnsInMineField, blockDimension + 2 * blockPadding));

for (int column = 1; column < numberOfColumnsInMineField + 1; column++)

{

blocks[row][column].setLayoutParams(new LayoutParams(

blockDimension + 2 * blockPadding,

blockDimension + 2 * blockPadding));

blocks[row][column].setPadding(blockPadding, blockPadding, blockPadding, blockPadding);

tableRow.addView(blocks[row][column]);

}

mineField.addView(tableRow,new TableLayout.LayoutParams(

(blockDimension + 2 * blockPadding) * numberOfColumnsInMineField, blockDimension + 2 * blockPadding));

}

}

private void endExistingGame()

{

stopTimer(); // stop if timer is running

txtTimer.setText("000"); // revert all text

txtMineCount.setText("010"); // revert mines count

btnSmile.setBackgroundResource(R.drawable.smile);

// remove all rows from mineField TableLayout

mineField.removeAllViews();

// set al

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。