贪吃蛇源码分析

贪吃蛇源码分析

ID:46221471

大小:113.52 KB

页数:16页

时间:2019-11-21

贪吃蛇源码分析_第1页
贪吃蛇源码分析_第2页
贪吃蛇源码分析_第3页
贪吃蛇源码分析_第4页
贪吃蛇源码分析_第5页
资源描述:

《贪吃蛇源码分析》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、贪吃蛇源码分析Androidsnake源代码分析代码结构分析:Snake:主游戏窗口SnakeView:游戏视图类,是实现游戏的主体类TileView:一个处理图片或其它Coordinate:这是一个包括两个参数,用于记录X轴和Y轴简单类,其中包括一个比较函数.Refshllandler:用于更新视图Snake这个类是游戏的主游戏窗口,是框架容器,-[JJSnake,java[自QSnakej[••“dSICICLE_KEYomSnakeViewQ.onCreate(Bundle)

2、血onSavelnstanceState(Bundle)一1.游戏的开始:oncreate此外的亮点是:setContentView(R.layout,snakelayout);设置窗口的布局文件,这里Androidl23给大家说明的是,这里的snake_layout使用了自定义资源标签的方式,大家注意学习:这里我们町以看到來自SnakeView这个派生类的名称,由于Android内部的R.资源不包含SnakeView类,所以我们必须写清处Package,比如Icom.exmple.android,sn

3、ake.SnakeView然后和他控件使用一样,都是一个id然后宽度、高度、以及口泄义的标签tileSize(尾巴长度),如下:1.onPause:关于这点,人家可以参考下在我blog屮关于active生命周期在玩游戏过程

4、中,如杲有来电或是其它事件中断,这时应该把当前状态保存。以便返回吋,还可以继续玩游戏。这就使用onSavelnstanceState实现保存当前状态。TileView注:此部分解析来自:Android示例程序Snake贪食蛇代码分析(三)T订eView,从名称上不难看出这是一个方砖类,就是牛成一个方块。TileView用了Android平台的显示基类View,View类是直接从java.lang.Object派生出来的,是各种控件比如TextView.EditView的基类,当然包括我们的窗口Activ

5、ity类,这些在SDK文档中都说的比较清楚。这里定义了5个int型全局的变量,分别是方砖的数量mTileSize;方砖水平x防线的数量mXTileCount;以及竖直y方向上的方砖数量mYTileCount,下而是一个相对偏移位置mXOffsot和mYOffset;这里androidl23主让要人家了解如何自定义View在Android开发中,在一个View类中主要是重写onSizeChanged方法来控制改变部分,以及onDraw实现画布的修改,实现的简写如下:©Overrideprotectedvo

6、idonSizeChanged(intw,inth,intoldw,intoldh){}©OverridepublicvoidonDraw(Canvascanvas){super.onDraw(canvas);}我们自定义的TileView类需要自己添加一个构造方法,根据需要,我们还重载了一种包含样式的方法,这里大家可以多看下Gallery控件的实现,就好理解了,下面是基本框架。publicTileView(Contextcontext,AttributeSetattrs,intdefStylc){su

7、per(context,attrs,defStylo);}publicTileView(Contextcontext,AttributeSetattrs){super(context,attrs);}在贪食蛇游戏中我们知道Snake是移动的,所以加入了一个清除显示的clearT订es方法,通过一个二维数组保存一个gird网格型的运动轨迹,下一次我们将会讲解android贪食蛇的游戏逻辑和完整的关联拼接实现。SnakeView在这个类中实现的游戏的实体,从游戏需求的角色,这个游戏包括了如下方而:1.随机产

8、生小苹呆,apples这里是复数,当然是是大于1个苹果,所以代码中产生了两个苹果。1.游戏状态管理2.画蛇,view的更新3.吃掉苹果后小蛇状态的变化4.画围墙如果实现吃掉苹果小蛇速度变快?关键是:mMoveDelay这个变量,以卜■是涉及到这个变量的函数,example・android.snake"src"Snake-©SnakeView回initNewGamm()•0restoreStatebundle)•0saveState()upd

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

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

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