BallThread对象继承自Thread线程类,起到了物理引擎的作用,负责根据物理公式对球的位置坐标等属性进行修改,从而改变球的运动轨迹。构造函数中对部分成员变量进行初始化,并启动物理引擎。构造函数中BallView类的两个常量V_MIN和V_MAX分别代表小球水平方向速度的最小值和最大值,此处用于生成小球的随机水平速度。为零判断,在小球上升的运动中和小球撞击地面后,都需要判断小球的速度是否为零。所以在程序中使用了阈值的方式,小球的速度一旦小于某个阈值,就将其认定为零。BallThread类:代表重力加速度的变量g初始化为200,此值是经过测试得出的较为合理的值。SurfaceView不同于普通的View,其具有不同的绘制机理,适合用于开发游戏程序。最后解锁BallView的画布并将其传回。

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法

Android游戏开发学习①弹跳小球实现方法