9编写推箱子游戏程序(第四步)

9编写推箱子游戏程序(第四步)

ID:30748550

大小:336.00 KB

页数:12页

时间:2019-01-03

9编写推箱子游戏程序(第四步)_第1页
9编写推箱子游戏程序(第四步)_第2页
9编写推箱子游戏程序(第四步)_第3页
9编写推箱子游戏程序(第四步)_第4页
9编写推箱子游戏程序(第四步)_第5页
资源描述:

《9编写推箱子游戏程序(第四步)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、编写推箱子游戏程序(第四步)1——绘制游戏区域叶常春(iamdouble@163.com)本文目标本文描述如何绘制游戏区和搬运工。如图1,在玩家选择关卡后,将进入游戏界面(图2)。现阶段,游戏界面只有标示游戏区域的网格线。进-步地,我们将在左上角单元格绘制一个搬运工(见图3)。将來,在游戏界面绘制推箱子游戏的局面(见图4)。图1玩家选关卡后进入游戏界面图2游戏界而第1版通过本文,你将学习到:1.用Java代码(而不是xml格式的布局文件)创建活动的界面。2.如何绘制2D图形(如直线、矩形)。3.如何绘制图片(如jpg图片或png图片)。1木文遵循ApacheLicense

2、2.0协议。你可以修改和再发布木文档,但须保留原苦者和采用ApacheLicense2.0协议。UMmHhoneAniS*/Mfc-DA耳0图3游戏界面第1版(左上角绘制了搬运工)图4将来的游戏界面实现步骤分三步:1.绘制背景色。2.绘制游戏区域的网格线。3.绘制搬运工。以上三步采用Java代码,而不是xml格式的布局文件,来完成。图4所示的游戏界面也是采用Java代码绘制2D图形和图像达成的。为什么采用Java代码,而不是xml格式的布局文件呢?这是因为,在我看来,釆用xml格式的布局文件是可以实现同样的功能的,但釆用Java代码会更便利一些。如果你有兴趣采用xml格式

3、的布局文件来实现同样的功能,我建议你试一试,还建议你考虑使用GridView控件。参阅:•Android自定义View的实现(http://blog.chinaunix.net/uid-26885609-id-3479671・html)第一步:绘制背景色游戏界而是采用Java代码绘制2D图形达成的。这句话是什么意思呢?看表1所示的代码,第10行(标有删除线)是加载一个布局文件activity_game.xml,用作GameActivity这个活动的界面。我们不使用这种方法。我们用的是,如第11,12行所示,先创建一个视图对象,即GameView实例,而后把它用作GameA

4、ctivity活动的界面。GameView是用Java代码实现的。表1游戏界面是GameActivity活动的内容视图com/yescorp/moveboxgame/GameActivity.java1publicclassGameActivityextendsAppCompatActivity{22publicstaticfinalStringKEY_SELECTED_LEVEL=,fSelected_Level,f;45678910111213(©OverrideprotectedvoidonCreate(BundlesavedInstanceState){super

5、,onCreate(savedInstanceState);intselected」evel=getlntent().getlntExtra(ArEK_^^^7^Z?_£.El/£Z.,1);GameViewgameView=newGameView(this);setContentView(gameView);}下面我们要定义GameView这个类。它的代码如表2所示。表2实现GameActivity活动的界面的GameView类1234567891011121314151617com/yescorp/moveboxgame/GameView.javapublicclas

6、sGameViewextendsView{privatefloatmCellWidth;publicstaticfinalintCELL_NUM_PER_LINE=12;publicGameView(Contextcontext){super(context);}(©OverrideprotectedvoidonDraw(Canvascanvas){super,onDraw(canvas);〃背景色Paintbackground=newPaint();background.setColor(getResources().getColor(R.color.b5cA^ro^/

7、7d));canvas.drawRect(O,0,getWidth(),getHeight(),background);}对于表2的代码,重点要说3个地方。•第1行,定义一个视图类,必须继承白View类(或它的子类)。View类是AndroidSDK预定义的,所有视图类(如Button,TextView,Layout)的父类。GameView继承自View类,表1中第12行才能正确运行,否则发生错误。•第5~8行是GameView类的构造函数。对照表1的第11行,对知参数context实质上是指GameActivity实例。•

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。