Coding the LiveDrawingView class
The first thing we will do is solve the problem of our LiveDrawingView
class not being of the View
type and having the wrong constructor. Update the class declaration as follows:
class LiveDrawingView( context: Context, screenX: Int) : SurfaceView(context){
You will be prompted to import the android.view.SurfaceView
class, as shown in the following screenshot:
Click on OK to confirm.
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
function in the MainActivity
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...