基于Android平台的星际射击游戏的设计与实现(10)
来源:56doc.com 资料编号:5D10234 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9A5D10234
资料介绍
return false; } return true; } } 5.2.5 接口类 本游戏的主要接口类为MyViewIMP.Java,各个属性类和主界面类MyView都是实现该接口来达到图片绘制,移动和逻辑处理的目的,实现的方法如下: public interface MyViewIMP { //初始化view,进行资源载入 public void InitView(); //更新view public void UpdataView(Canvas canvas,Paint paint); //view移动 public void MoveView(); //view的逻辑处理 public void LogicView(); //view 的资源回收 public void RelaxView(); } 5.3 屏幕响应的实现 屏幕响应主要靠实现OnTouchListener接口,OnTouchListener接口是用来处理手机屏幕事件的监听接口,当为View的范围内触摸按下,抬起或滑动等动作时都会触发该事件,本游戏在MainActivity类中实现OnTouchListener接口。 public boolean onTouch(View v, MotionEvent event) { float touchx = event.getX(); float touchy = event.getY(); if(!myview.isRun &&touchx<64&&touchy<64){ handler.sendEmptyMessage(1); } if(event.getAction() == MotionEvent.ACTION_DOWN){ if(touchx > windowsWidth/3 && touchx < (windowsWidth/3)*2 && touchy <= windowsHeight/3){ myview.plane.moveflg = 0; }else if(touchx >= (windowsWidth/3)*2){ myview.plane.moveflg = 1; }else if(touchx > windowsWidth/3 && touchx < (windowsWidth/3)*2 && touchy >= (windowsHeight/3)*2){ myview.plane.moveflg = 2; }else if(touchx <= windowsWidth/3){ myview.plane.moveflg = 3; } } if(event.getAction() == MotionEvent.ACTION_UP){ myview.plane.moveflg = -1; } return true; } 6 运行与测试 在这个程序设计完成之后,为了验证整个程序是否能够正常的运行,是否能够实现预期的功能,而设计了一些测试。 6.1 Android应用开发的测试技术 第一步:首先在AndroidManifest.xml中加入下面代码: <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="cn.itcast.action“ android:versionCode="1"android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <uses-library android:name="android.test.runner" /> .... </application> <uses-sdk android:minSdkVersion="6" /> <instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="需要测试的类所在的包的名" android:label="Tests for My App" /> </manifest> 上面targetPackage指定的包要和应用的package相同。 第二步:编写单元测试代码,选择要测试的方法,右键点击“Run As”—“Android Junit Test”进行测试[11]。 6.2 测试的任务 设计测试方案是测试阶段的关键技术问题。所谓测试方案包括预定要测试的功能。应该输入的测试数据和预期的结果,目标是设计一组可能发现错误的数据。 主要的测试目标是在软件成功运行之前,能够尽早尽快的发现软件存在的错误,以便调试改正。 6.3 测试方案与过程 针对系统的模块化的设计,采取各个模块的独立测试和程序初运行的完整测试。 6.3.1 模块测试 在对背景音乐和音效的设置中,通过不断的点击设置按钮,不断的点击背景音乐和音效的开和关,以达到测试的目的。 在游戏的主界面中,通过反复多次的运行游戏,射击敌机,不断的碰撞道具,观察敌机的爆炸效果,和碰撞道具后,飞机本身一些特性是否发生改变,来测试游戏逻辑是否合理,触控是否流畅自如。 |