毕业论文-基于android平台数独游戏的设计与实现内容摘要:
used[x][y] = calculateUsedTiles(x, y); } } //游戏结束 int num=0。 for(int i=0。 i81。 i++){ if(puzzle[i]!=0) num++。 } if(num==81){ Intent t=new Intent(this,)。 sec=time。 //计算用户用时分秒 =false。 //停止计时 (aaa,flag false)。 startActivity(t)。 } } 3. 通关 界面 通关界面是完成一局数独游戏后弹出的的界面,显示玩家该局游戏 的得分,如果得分破了数据库里面的前五条记录则弹出破纪录界面。 通关 界面 的 文件名 为“ ” ,布局文件为“ ”和“ ”。 3. 1 界面 通关界面如图 4图 44 所示。 图 43 通关界面 1 图 44 通关界面 2 14 3. 2 主要代码 public class GameOver extends Activity implements OnClickListener{ private Button restart,outgame,orderbutton。 private TextView mytime,gameover,score1。 private EditText myname。 static int num=0。 SQLiteOpenHelper helper=null。 private MytabOperate myrank = null。 private MytabCursor mytabcursor。 MediaPlayer mp。 int s,mn,t=1,score=0。 protected void onCreate(Bundle savedInstanceState) { (savedInstanceState)。 helper = new MyDatabaseHelper(this)。 mytabcursor=new MytabCursor(())。 s=。 (aaa,s+ )。 (aaa,s+ gameover)。 mn=()。 (aaa,mn+ gameover)。 //恭喜您通关了 //smnamp。 amp。 mn!=0 if(smnamp。 amp。 mn!=0){ setContentView()。 restart=(Button)findViewById()。 outgame=(Button)findViewById()。 score1=(TextView)findViewById()。 (this)。 (this)。 score= 1000 s*10。 (score+分 )。 //setText((score)) } 15 //恭喜您破纪录了 else { setContentView()。 mytime=(TextView)findViewById()。 myname=(EditText)findViewById()。 orderbutton=(Button)findViewById()。 (this)。 (s+秒 )。 } } public void onClick(View v) { switch(()){ case : num=num+1。 if (num2) { ()。 Toast toast = (this,恭喜您顺利通过三关 ,完成了本关卡的挑战 , 2500)。 // (duration:显示时间 ) (, 0, 0)。 //setGravity(起点位置 ,水平向右位移 ,垂直向下位移 ) ()。 Intent tt=new Intent(this,)。 startActivity(tt)。 break。 } else { Intent t=new Intent(this,)。 startActivity(t)。 break。 } case : ()。 Intent tt=new Intent(this,)。 16 startActivity(tt)。 break。 case : //传输数据到数据库 if(().length()=10amp。 amp。 s!=0) { = new MytabOperate( ())。 (().toString(), s)。 (aaa,insert success)。 setContentView()。 gameover=(TextView)findViewById()。 restart=(Button)findViewById()。 //再来一局 outgame=(Button)findViewById()。 //返回 score1=(TextView)findViewById()。 score= 1000 s*10。 (score+分 )。 (this)。 (this)。 (成绩已登录排行榜。 )。 } else { //消息对话框 new (this).setMessage(您输入的名字过长(不超过 10 位)请返回重新输入。 ).create().show()。 } break。 } } protected void onResume(){ ()。 mp=(this, )。 ()。 } } 17 4. 排行榜 界面 排行榜界面是点击“英雄榜”弹出的 界面, 调用数据库显示前五名玩家的名次、用户名和用时等数据。 排行榜 界面的文件名 为“ ” ,布局文件为“ ”。 4. 1 界面 排行榜 界面如图 45 所示。 图 45 排行榜 界面 4. 2 主要代码 public class Rank extends Activity{ private SQLiteOpenHelper helper = null。 private LinearLayout mylayout = null。 public void onCreate(Bundle savedInstanceState) { (savedInstanceState)。 ()。 (aaa, contentView go)。 = (LinearLayout) ()。 = new MyDatabaseHelper(this)。 ListView listView = new ListView(this)。 // 要设置数据 18 ( // 所有的数据是字符串 new ArrayAdapterString( this, // 上下文对象 // 列表显示的布局 , new MytabCursor( // 实例化查询 // 取得 SQLiteDatabase 对象 ()) .find()))。 // 调用 find()方法,返回 ListString。 (listView)。 } } 5. 数独简介 界面 简介 界面是 点击“关于数独”弹出的界面 , 这是显示的是 数独的 简要 介绍 以及 对游戏的玩法进行讲解和说明 的文字。 简介 界面的文件名 为“ ” ,布局文件为“ ”。 5. 1 界面 数独简介 界面如图 46 所示。 图 46 排行榜界面 19 5. 2 主要代码 public class About extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { (savedInstanceState)。 setContentView()。 } } 五 、 软件实现 1.主界面 实现(见图 41) 2. 游戏 界面 实现(见图 42) 3. 通关 界面 实现(见图 4图 44) 4. 排行榜 界面 实现(见图 45) 5. 数独简介 界面实现(见图 46) 六、 软件测试 1. 测试策略 以黑盒测试为主,白盒测试为辅,通过简单的查看软件内部代码,了解软件的运行状态。 20 ( 1)、易用性测试 测试目标 测试游戏是否容易进入,显示速度,设计是否合理 方法 进行手工测试调整不规范的地方。 完成标准 测试成功,测试能达到基本要求并且发现的问题全部解决 需考虑的特殊事项 测试过程中可能出现手机内存状态不稳定。 ( 2)、功能测试 测试目标 测试所有功能是否已正常实现。 数据精确:各数据类型的输入时统计精确。 方法 对测试对象的功能进行测试,调整不规范的地方。 进行手工测试。 完成标准 测试成功,测试用例通过并且发现的严重错误全部解决 需考虑的特殊事项 测试过程中可能出现系统 版本 不兼容。 ( 3)、性能测试 测试目标 核实游戏 在用户访问 多 数据 时 性能的稳定性,不造成系统崩溃或相关的异常现象 方法 负荷测试和压力测试 完成标准 系统能满足用户需求中所要求的性能要求 需考虑的特殊事项 暂无 ( 4)、配置 /兼容性测试 测试目标 核实系统在不同的软件和硬件配置中运行稳定 方法 手工测试和工具测试相结合 完成标准 在各种不同 android 版 本 、 不同 类型 android 手机 均能正常实现功能 需考虑的特殊事项 暂无 ( 5)、安全性测试 测试目标 核实用户是否只能操作其拥有权限能操作的功能,核实只有具备访问权限的管理员才能访问系统 方法 手工测试和工具测试相结合 完成标准 执行各种非法操作无安全漏洞且 游戏 使用正常 需考虑的特殊事项 暂无 21 2. 测试内容 首 界面 主要 测试 内容 按钮是否响应,是否能弹出相应对话框。 游戏界面 主要 测试内容 ( 1)是否能正确弹出棋局 ; ( 2)棋盘是否正常显示 ; ( 3)点击界面是否弹出当前位置的小键盘,是否有数字 提示 ; ( 4)数字是否能正确填入,填写出错是否响应错误提示。 游戏结束界面主要测试内容 ( 1)是否正确弹出 “ 通过提示 ” 对话框 ; ( 2)图片是否正常显示,得分显示是否正确 ; ( 3)当玩家用时低于数据库中的记录时是否能弹出 “ 破纪录 ” 对话框,并正确显示玩家的用时 ; ( 4)输入用户信息时:合法输入,能否正常存入数据库并再次弹出“通关提示”对话框;非法输入,系统能否辨别并作出响应; ( 5)当玩家成功通过三大关卡中的某一个三局及其以上游戏,是否能弹出相应提示并结束。 排行榜界面测试内容 ( 1)是否能正常 调用数据库 ; ( 2)信息是否正确显示。 背景音乐 测试 内容 ( 1)打开游戏首界面、进行游戏、游戏通关是否播放不同 背景音乐 ; ( 2)点击 “ 返回 ” 退出游戏,是否音乐停止。 22 3.测试 结论 ( 1) 测试目标 基本 完成 ; ( 2) 测试 全部 通过。 此次测试 是 将系统各功能模块进行逐一的检查,对系统各功能的正常运行做了充分的测试。 输入数据库数据 的检测 功能 以 及出错处理情况。 但由于功能模块较多,采用功能测试设计的测试用例比较多,测试花费 了 一定的时间。 七、 总 结 在做课程设计之前,我对 Android 知识的掌握是很有限的,主要 来自于课堂上老师授予的,而自己在课后花的时间相对较少。 因此有些知识记得不清楚甚至不知道,这就在很大程度上给本次课程设计带来了很多麻烦,如时间的多余开销,程序编写的效率低下,代码显得长而复杂等。 在本次课程设计的过程中,每一步功能的实现都让我感到无。毕业论文-基于android平台数独游戏的设计与实现
相关推荐
oid:layout_height=wrap_content android:layout_gravity=right android:layout_marginRight=2dip android:text=退出 android:background=@drawable/button/ /LinearLayout 相对布局参见图 32: 图示 32 相对布局 核心技术代码: ?xml
teTemp=1。 break。 case 0xFD:state=2。 stateTemp=2。 break。 case 0xFB:state=3。 stateTemp=3。 break。 case 0xF7:state=4。 stateTemp=4。 break。 default:break。 } } void _int()interrupt 2 using 2 { if(flag==0) {
机在计算机外围设备中的应用:单片机广泛应用于打印机、绘图机等多种计算机的外围设备,特别是用于智能终端,可大大减轻主机负担,提高系统的运行速度。 ⑥ 单片机在家用电器中的应用:单片具有体积小、重量轻、价格便宜等特点,所以家电产品中配上微电脑后,使其身价百倍,功能更强,使用方便,灵活,深得用户欢迎。 ⑦ 单片机在通信中的应用:单片机广泛应用于移动通信领域,使移动电话的功能更强大,操作更方便。 节
TTamp。 ksv*3tnGK8!z89AmYWpazadNuKNamp。 MuWFA5ux^Gjqv^$UE9wEwZQc@UE%amp。 qYp@Eh5pDx2zVkumamp。 gTXRm6X4NGpP$vSTTamp。 ksv*3tnGK8!z89AmYWpazadNuKNamp。 MuWFA5uxY7JnD6YWRrWwc^vR9CpbK
LG ;水位高 — LG JB LD , ;水位没低 LD CLR ;水位低报警 JB , LDD ;水位未低低 LDD CLR ;水位低低报警 JNB , Y1 ; M1 已启动 — Y1 CLR ;否则启动 M1 Y1: JNB ,Y2 ; M2 已启动 Y2 CLR ;否则启动 M2 Y2: ACALL DELAY ;延时 1 分钟 AJMP AUT ;返回自动模式 LDD: JNB
R 1 820/2W*2R 1 9470R 2 0470R 2 1R P 11kR P 21kR P 310kD1D27 . 5 vD31N4148C1100pC20 . 1 uC30 . 1 uC42 . 2 uC5C60 . 1 uC7C80 . 1 uC968pC 1 068pINOUTOUT图 5 前置低放电路图 模拟电子技术课程设计 T3 和 Q T4