Learning Java by Building Android  Games
上QQ阅读APP看书,第一时间看更新

Adding classes by importing packages

We will solve the error in the onTouchEvent method declaration by adding an import statement for the MotionEvent class which is causing the problem. Underneath the two existing import statements add this new one that I have highlighted in this next code.

package com.gamecodeschool.subhunter;

// These are all the classes of other people's
// (Android) code that we use for Sub Hunter
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;

Check the onTouchEvent method and the error is gone. Now add these further import statements directly below the one you just added and that will take care of importing all the classes that we need for this game. As we use each one over the course of the next five chapters I will introduce them formally. In the previous code, I have also added some comments to remind what all the import statements do.

Add the highlighted code. The syntax needs to be exact so consider copy and pasting the code.

// These are all the classes of other people's
// (Android API) code that we use in Sub' Hunt
import android.app.Activity;
import android.os.Bundle;
import android.view.MotionEvent;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Point;
import android.view.Display;
import android.util.Log;
import android.widget.ImageView;
import java.util.Random;

Notice the new lines of code are greyed-out in Android Studio. This is because we are not using them yet and at this stage, they are technically unnecessary. Also, Android Studio gives us a warning if we hover the mouse pointer over the little yellow indicators to the right of the unused import statements.

Adding classes by importing packages

This isn't a problem and we are doing things this way for convenience as it is the first project. In the next project, we will see how to add import statements as and when we need them without any fuss.

We have briefly mentioned the Activity class. We need to learn a little bit more about it to proceed. We will do so while linking up our methods with some method calls.