Basic event handling
Let's start by adding some basic event handling to our custom views. We'll go through the basics, and we'll add more complex events later on.
Reacting to touch events
In order to make our custom view interactive, one of the first things we will implement is to process and react to touch events, or basically, when the user touches or drags on top of our custom view.
Android provides us with the onTouchEvent()
method that we can override in our custom view. By overriding this method, we'll get any touch event happening on top of it. To see how it works, let's add it to the custom view we built in the last chapter:
@Override public boolean onTouchEvent(MotionEvent event) { Log.d(TAG, "touch: " + event); return super.onTouchEvent(event); }
Lets also add a log call to see the events we receive. If we run this code and touch on top of our view, we'll get the following:
D/com.packt.rrafols.customview.CircularActivityIndicator: touch: MotionEvent { action=ACTION_DOWN...