安卓益智小游戏课程设计报告书.docx
- 文档编号:8161926
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:30
- 大小:2.16MB
安卓益智小游戏课程设计报告书.docx
《安卓益智小游戏课程设计报告书.docx》由会员分享,可在线阅读,更多相关《安卓益智小游戏课程设计报告书.docx(30页珍藏版)》请在冰豆网上搜索。
安卓益智小游戏课程设计报告书
西安**大学
安卓游戏课程设计报告书
院系名称
:
专业班级
:
学生姓名
:
学号
:
时间
:
Android益智游戏
一、题目:
设计一个Android游戏(Beentheredonethat)
社交益智游戏一直很流行,它可以使大家熟悉众多的AndroidSDK的功能。
这是一个有关旅行的社交益智游戏。
在这个游戏中,将向用户询问一些有关旅行和相关经历的问题。
例如:
你见过埃及的金字塔吗?
你挤过牛奶吗?
你与海豚一起潜过水吗?
二、基本功能:
1、显示应用程序的名称、版本和开发人员的启动屏幕。
2、解释游戏规则:
显示文本文件解释如何玩游戏。
3、游戏介绍:
在帮助中以文本形式提供游戏的介绍。
4、游戏向用户提出一系列问题,并记录用户做出肯定回答的次数。
对于每一个问题,都将显示文本和图形。
例如,游戏屏幕可能显示一张山脉图片,询问用户是否爬过山,并记录用户的答案:
yes或者NO。
5、可以退出游戏。
三、功能模块图:
四、系统流程图:
五、游戏运行图:
1、游戏主界面:
2、游戏规则界面与帮助界面:
3、游戏界面:
(包含三个问题界面)
4、结果页面(根据选择可显示三种不同结果)
六、源代码:
1、Java代码(实现页面跳转,按钮功能,传值的功能的Avtivity类)
(1)、主界面:
(实现游戏开始、规则、帮助页面的跳转,并实现退出功能)
packagecom.luman.luman;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.Menu;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
publicclassMainActivityextendsActivity{
privateButtonbutton01;
privateButtonbutton02;
privateButtonbutton03;
privateButtonbutton04;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button01=(Button)findViewById(R.id.begin);
button02=(Button)findViewById(R.id.rule);
button03=(Button)findViewById(R.id.help);
button04=(Button)findViewById(R.id.tuichuId);
button01.setOnClickListener(newMyButtonListener01());
button02.setOnClickListener(newMyButtonListener02());
button03.setOnClickListener(newMyButtonListener03());
button04.setOnClickListener(newMyButtonListener04());
}
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
//Inflatethemenu;thisaddsitemstotheactionbarifitispresent.
getMenuInflater().inflate(R.menu.main,menu);
returntrue;
}
classMyButtonListener01implementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(MainActivity.this,Activity01.class);
MainActivity.this.startActivity(intent);
}
}
classMyButtonListener02implementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(MainActivity.this,Other01.class);
MainActivity.this.startActivity(intent);
}
}
classMyButtonListener03implementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(MainActivity.this,Other02.class);
MainActivity.this.startActivity(intent);
}
}
classMyButtonListener04implementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
finish();
}
}
}
(2)游戏界面:
(包含三个问题界面与一个结果界面,并传递数据,结果界面可实现返回主界面功能)
1>问题一:
packagecom.luman.luman;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.RadioButton;
importandroid.widget.RadioGroup;
importandroid.widget.RadioGroup.OnCheckedChangeListener;
publicclassActivity01extendsActivity{
privateRadioGroupradioGroup;
privateRadioButtonYesButton;
privateRadioButtonNoButton;
privateButtonbutton;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
//TODOAuto-generatedmethodstub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity01);
button=(Button)findViewById(R.id.quedingId);
button.setOnClickListener(newMyListener());
radioGroup=(RadioGroup)findViewById(R.id.radioGroupId);
YesButton=(RadioButton)findViewById(R.id.YesId);
NoButton=(RadioButton)findViewById(R.id.NoId);
RadioGroupListenerlistener=newRadioGroupListener();
radioGroup.setOnCheckedChangeListener(listener);
}
classRadioGroupListenerimplementsOnCheckedChangeListener{
@Override
publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){
//TODOAuto-generatedmethodstub
if(checkedId==YesButton.getId()){
((First)getApplication()).setScore1();
}
elseif(checkedId==NoButton.getId()){
((First)getApplication()).setScore2();
}
}
}
classMyListenerimplementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(Activity01.this,Activity02.class);
Activity01.this.startActivity(intent);
}
}
}
2>问题二:
packagecom.luman.luman;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.RadioButton;
importandroid.widget.RadioGroup;
importandroid.widget.RadioGroup.OnCheckedChangeListener;
publicclassActivity02extendsActivity{
privateRadioGroupradioGroup;
privateRadioButtonYesButton;
privateRadioButtonNoButton;
privateButtonbutton;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
//TODOAuto-generatedmethodstub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity02);
button=(Button)findViewById(R.id.quedingId);
button.setOnClickListener(newMyListener());
radioGroup=(RadioGroup)findViewById(R.id.radioGroupId);
YesButton=(RadioButton)findViewById(R.id.YesId);
NoButton=(RadioButton)findViewById(R.id.NoId);
RadioGroupListenerlistener=newRadioGroupListener();
radioGroup.setOnCheckedChangeListener(listener);
}
classRadioGroupListenerimplementsOnCheckedChangeListener{
@Override
publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){
//TODOAuto-generatedmethodstub
if(checkedId==YesButton.getId()){
((First)getApplication()).setScore1();
}
elseif(checkedId==NoButton.getId()){
((First)getApplication()).setScore2();
}
}
}
classMyListenerimplementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(Activity02.this,Activity03.class);
Activity02.this.startActivity(intent);
}
}
}
3>问题三:
packagecom.luman.luman;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.RadioButton;
importandroid.widget.RadioGroup;
importandroid.widget.RadioGroup.OnCheckedChangeListener;
publicclassActivity03extendsActivity{
privateRadioGroupradioGroup;
privateRadioButtonYesButton;
privateRadioButtonNoButton;
privateButtonbutton;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
//TODOAuto-generatedmethodstub
super.onCreate(savedInstanceState);
setContentView(R.layout.activity03);
button=(Button)findViewById(R.id.quedingId);
button.setOnClickListener(newMyListener());
radioGroup=(RadioGroup)findViewById(R.id.radioGroupId);
YesButton=(RadioButton)findViewById(R.id.YesId);
NoButton=(RadioButton)findViewById(R.id.NoId);
RadioGroupListenerlistener=newRadioGroupListener();
radioGroup.setOnCheckedChangeListener(listener);
}
classRadioGroupListenerimplementsOnCheckedChangeListener{
@Override
publicvoidonCheckedChanged(RadioGroupgroup,intcheckedId){
//TODOAuto-generatedmethodstub
if(checkedId==YesButton.getId()){
((First)getApplication()).setScore1();
}
elseif(checkedId==NoButton.getId()){
((First)getApplication()).setScore2();
}
}
}
classMyListenerimplementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(Activity03.this,Other03.class);
Activity03.this.startActivity(intent);
}
}
}
4>结果界面:
packagecom.luman.luman;
importcom.luman.luman.MainActivity.MyButtonListener01;
importandroid.app.Activity;
importandroid.content.Intent;
importandroid.os.Bundle;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.widget.Button;
importandroid.widget.TextView;
publicclassOther03extendsActivity{
privateButtonbutton;
@Override
protectedvoidonCreate(BundlesavedInstanceState){
//TODOAuto-generatedmethodstub
super.onCreate(savedInstanceState);
setContentView(R.layout.other03);
button=(Button)findViewById(R.id.fanhuiId);
button.setOnClickListener(newMyButtonListener());
intscore=((First)getApplicationContext()).getScore();
TextViewresult=(TextView)findViewById(R.id.resultId);
if(score==3)result.setText("年轻人应该多尝试有意思的事情,不要让自己总是宅在家里啦!
");
if(score==21)result.setText("劳逸结合,不错哦,继续保持这种生活习惯,越活越年轻哦!
");
if(score==12)result.setText("劳逸结合,不错哦,继续保持这种生活习惯,越活越年轻哦!
");
if(score==30)result.setText("朋友,你太爱玩啦,偶尔也要停下来休息休息哦!
");
}
classMyButtonListenerimplementsOnClickListener{
@Override
publicvoidonClick(Viewarg0){
//TODOAuto-generatedmethodstub
Intentintent=newIntent();
intent.setClass(Other03.this,MainActivity.class);
Other03.this.startActivity(intent);
}
}
}
(3)、全局变量的定义:
packagecom.luman.luman;
importandroid.app.Application;
publicclassFirstextendsApplication{
privateintscore=0;
publicintgetScore(){
returnscore;
}
publicvoidsetScore1(){
//aredPreferencepre=newSharedPreferene();
score=score+10;
}
publicvoidsetScore2(){
score=score+1;
}
}
2、界面.xml代码(共7个界面)
(1)、主界面
android="
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 益智 小游戏 课程设计 报告书