台球游戏系统安卓课程设计.docx
- 文档编号:749369
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:23
- 大小:1.77MB
台球游戏系统安卓课程设计.docx
《台球游戏系统安卓课程设计.docx》由会员分享,可在线阅读,更多相关《台球游戏系统安卓课程设计.docx(23页珍藏版)》请在冰豆网上搜索。
台球游戏系统安卓课程设计
计算机学院课程设计
专业:
计算机应用技术
课程名称:
3G开发基础
课题名称:
台球游戏系统
教师:
学号:
姓名:
2013年9月20日——2013年12月25日
前言
Android是基于Linux开放性内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统。
早期由原名为“Android”的公司开发,谷歌在2005年收购“Android.Inc”后,继续进行对Android系统开发运营,它采用了软件堆层的架构,主要分为三部分。
底层Linux内核只提供基本功能,其他的应用软件则由各公司自行开发,部分程序以Java编写。
2011年初数据显示,仅正式上市两年的操作系统Android已经超越称霸十年的塞班系统,使之跃居全球最受欢迎的智能手机平台。
现在,Android系统不但应用于智能手机,也在平板电脑市场急速扩张。
综合本学期的学习,开发一款基于android环境的台球游戏,熟练掌握android应用开发。
1.课程设计目的
1.1关于java
1、熟悉Java开发环境,熟悉用Java完成一个应用程序的设计过程,掌握有关编辑、调试和整合程序的方法和技巧。
2、通过此设计,了解Java语言的特点;熟悉Java程序的编写;体会Java语言在问题求解中的特点。
3、总结学习Java语言的心得和体会,并对Java课程设置提出自己的意见和建议。
1.2关于android
熟悉android开发环境,熟悉用java语言实现一个安卓程序的设计过程,掌握有关的设计技巧
1、熟悉android开发环境,熟悉用java语言实现一个安卓程序的设计过程,掌握有关的设计技巧
2、通过此课程设计,了解android系统的特点,掌握android相关的知识点。
3、总结学习android开发环境,熟悉用java语言实现一个安卓程序的设计过程,掌握有关的设计技巧
总结学习android的心得和体会,并且android课程提出自己的意见和建议,从中得到自己的学习心得和体会。
2.设计任务及要求
根据android课程学习,将手机台球游戏设计的总体设计框架以及详细的设计和实现过程通老师讲解和自己的理解将其全部以课程设计的方式书写出来。
3.总体设计框架
4.详细设计和实现过程
4.1配置开发环境
1、安装JDK
首先将下载的jdk-6u24-windows-i586安装到C:
\下
2、配置环境变量
选择计算机>右键>属性>高级设置>环境变量
CLASSPATH:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
JAVA_HOME:
C:
\ProgramFiles(x86)\Java\jdk1.6.0_24
Path:
%JAVA_HOME%\bin;
将以上三个配置到环境变量中
3、安装eclipse
双击eclipse快捷方式图标,它会在你选择的路径下生成一个workspace文件夹,以后的项目都在这里面。
4、安装ADT
离线安装ADT:
点击eclipse上的help进入如图所示,点击add将ADT导入
若安装成功则会出现如图所示的navigate下面手机图标。
5、安装SDK
点击window进入preference,然后点击android,在SDKLocation中导入SDK,安装成功之后如图所示。
4.2功能定义
台球游戏是根据人们日常中打台球的模式进行模拟式的通过点击按钮来调准角度并出击球杆。
选择【开始游戏】之后可选择【倒计时模式】和【练习模式】进行玩台球游戏,另外还可以点击【排行榜】查看分数情况,倒计时模式是在一定的时间进行玩游戏,练习模式是对于初次玩台球游戏的玩家或者不熟练的玩家。
4.3类的设计
4.4类的功能
各个类功能清单
文件名
主要功能
备注
Constant.java
定义台球所需工具
GameActivity.java
主体类
Main方法
WhatMessage.java
Surface所需的常量类
ImageButton.java
球杆变形按钮
ISwitchButton.java
SwitchButton.java
角度调整按钮
AboutView,java
关于界面
ChoiceView.java
选项菜单界面
HelpView.java
帮助界面
SoundControl.java
声音控制界面
Ball.java
台球
BallGoThread.java
桌球运动
Cue.java
球杆
CueAnimateThread.java
倒计时间
GameView.java
游戏界面
GameViewDrawThread.java
桌球运动画面
KeyThread.java
监听触控按键线程类
StrengthBar.java
力度条
Table.java
球台
Timer.java
计时器
TimeRunningThread.java
倒计时线程类
VirtualButton.java
虚拟按钮类
FailView.java
游戏失败界面
HighScoreView.java
分数记录界面
MainMenuView.java
主界面
WellcomeView.java
欢迎界面
WinView.java
游戏胜利界面
CollisionUtil.java
进行碰撞检测和物理计算工具类
ColorUtil.java
颜色工具类
DataUtil.java
系统当前日期工具类
PicLoadUtil.java
图片工具类
ScreenScaleResult.java
横竖屏幕工具类
ScreenScaleUtil.java
计算缩放情况工具类
4.5类的特点
4.5.1抽象类WhatMessage的描述
publicclassWhatMessage{
publicstaticfinalintGOTO_WELLCOME_VIEW=0;//欢迎界面
publicstaticfinalintGOTO_MAIN_MENU_VIEW=1;//主菜单界面
publicstaticfinalintGOTO_GAME_VIEW=2;//游戏界面
publicstaticfinalintGOTO_SOUND_CONTORL_VIEW=3;//声音控制界面
publicstaticfinalintGOTO_WIN_VIEW=4;//胜利界面
publicstaticfinalintGOTO_FAIL_VIEW=5;//失败界面
publicstaticfinalintGOTO_HIGH_SCORE_VIEW=6;//排行榜界面
publicstaticfinalintGOTO_HELP_VIEW=7;//帮助界面
publicstaticfinalintGOTO_ABOUT_VIEW=8;//关于界面
publicstaticfinalintGOTO_CHOICE_VIEW=9;//选择界面
publicstaticfinalintOVER_GAME=10;//游戏结束
}
这个类主要是标识所有SurfaceView的常量,这些界面的常量用数字0至10表示的好处是:
在后面的编程过程中更快捷,而且简单明了。
4.5.2界面设置
publicclassAboutViewextendsViewGroup{
Paintpaint;//画笔引用
BitmapbgBitmap;//背景图片
Bitmapbmp;//文字的图片
floatbmpx;//文字位置
publicAboutView(GameActivityactivity){
super(activity);
setWillNotDraw(false);
paint=newPaint();//创建画笔
paint.setAntiAlias(true);//打开抗锯齿
initBitmap();//初始化位图资源
}
//确定View的大小
@Override
protectedvoidonMeasure(intwidthMeasureSpec,intheightMeasureSpec){
this.setMeasuredDimension(bgBitmap.getWidth(),bgBitmap.getHeight());
}
//确定各子控件的位置与大小,调用子控件的layout函数进行
@Override
protectedvoidonLayout(booleanchanged,intl,intt,intr,intb){
}
//显示函数
@Override
publicvoidonDraw(Canvascanvas){
canvas.drawBitmap(bgBitmap,0,0,paint);
canvas.drawBitmap(bmp,bmpx+Constant.X_OFFSET,Constant.BMP_Y+Constant.Y_OFFSET,paint);
}
//加载图片的方法
publicvoidinitBitmap(){
bgBitmap=BitmapFactory.decodeResource(this.getResources(),R.drawable.help);
bmp=BitmapFactory.decodeResource(this.getResources(),R.drawable.bmp0);
bgBitmap=PicLoadUtil.scaleToFitFullScreen(bgBitmap,Constant.wRatio,Constant.hRatio);
bmp=PicLoadUtil.scaleToFit(bmp,Constant.ssr.ratio);
//初始化图片的位置
bmpx=(Constant.SCREEN_WIDTH-bmp.getWidth())/2;
}
}
界面设置的类继承ViewGroup,使用onMeasure确定view大小、onLayo确定各个子控件的位置与大小,onDraw方法显示函数,initBitmao方法加载图片。
4.5.3监听器
publicclassKeyThreadextendsThread{
privatebooleanflag=true;
GameViewgameView;
privateintsleepSpan=40;
privatefloatchangeSpeedTime=80f;//改变速度的时间点
publicKeyThread(GameView
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 台球 游戏 系统 课程设计
![提示](https://static.bdocx.com/images/bang_tan.gif)