游戏设计思路:
主界面点击开始游戏:进入打地鼠界面游戏中有12个地洞,游戏时间为30s(可以自己设置),每0.5s会有地鼠随机出现在一个地洞中,玩家触摸屏幕,打到地鼠加10分,否则不加分。30s后游戏结束,弹出窗口显示获得分数,需要玩家输入姓名后,点击确定保存到本地数据库中。
设计实现:每个地洞为一个ImageButton,开始设置背景为地洞图片,地鼠出现则设置为地鼠图片,给每个按钮添加点击事件,当玩家点击按钮时,如果打到地鼠,该按钮设置打中地鼠图片,否则设置没打中地鼠的图片。游戏结束开启记录窗口,记录玩家信息。
主界面点击排行榜:如果没有记录,提示暂无排行,有记录就跳转界面,按分数从高到低显示玩家信息。
设计实现:通过对数据库的查询操作,返回一个ArrayList,如果ArrayList长度为0,则提示“暂无排行”,否则开启一个新的Activity显示玩家信息。
主界面点击关于:显示游戏的相关信息。
设计实现:Activity跳转。
主界面点击退出:游戏退出
设计实现:调用finish()函数。
主界面点击音乐图标:游戏打开默认播放音乐,点击图标背景音乐和音效会关闭,再次点击会播放背景音乐和音效。
设计实现:一个ToggleButton(开关按钮)背景设置成音乐图标,点击会触发响应事件。
按物理返回键游戏停止,在onDestroy()方法中做释放资源等操作。
注:游戏中所写的Activity继承BaseActivity,自己实现的一个继承Activity的类。那么为什么要实现这么一个类呢?在游戏的后期添加音效时,程序进入后台,背景音乐会一直播放,因为背景音乐在所有的Activity中都会播放,所以要在每个Activity的生命周期的回调函数中对音乐操作无疑是比较麻烦的,所以继承自一个我们自己实现的BaseActivity,只需要在BaseActivity中来操作即可。
BaseActivity的代码如下:
主界面代码如下:
顺便贴一下About中的代码:这个类比较简单直接加载对应的xml文件就可以,一些介绍的话在xml中写。
Tags:Activity | 2017/1/19 | 发表评论