The Ball class
Before we start hammering away at the keyboard, let's have a think about what the Ball
class will need to be and do.
The ball will be drawn in the draw
method of the PongGame
class by the drawRect
method of the Canvas
class. The ball is square-shaped like the original Pong game. Therefore, the ball is going to need the coordinates and size to represent a square.
Shortly, we will see a new class from the Android API that can hold the coordinates of a rectangular ball, but we also need a way to describe how we arrive at and manipulate these coordinates.
For this, we will need variables to represent width and height. We will call them mBallWidth
and mBallHeight
. Furthermore, we will need variables to hold the target horizontal and vertical rate of travel in pixels. We will call them mXVelocity
and mYVelocity
respectively.
Perhaps surprisingly, these four variables will be of type float
. Game objects are plotted on the screen using integer coordinates...