Coding the LiveDrawingView class
The first thing we will do is solve the problem of our LiveDrawingView
class not being of the View
type. Update the class declaration as highlighted, as follows:
class LiveDrawingView extends SurfaceView {
You will be prompted to import the android.view.SurfaceView
class, as shown in the following screenshot:
Click OK to confirm this.
SurfaceView
is a descendant of View
and now LiveDrawingView
is, by inheritance, also a type of View
. Look at the import
statement that has been added. This relationship is made clear, as highlighted in the following code:
android.
view.SurfaceView
Tip
Remember that it is because of polymorphism that we can send descendants of View
to the setContentView
method in the LiveDrawingActivity
class, and that it is because of inheritance that LiveDrawingView is now a type of SurfaceView.
There are quite a few descendants of View
that we could have extended to fix this initial problem, but we will see as we continue that SurfaceView
has some...