Chapter 10. View Binding: Bound Together

image

It’s time to wave farewell to findViewById().

As you’ve probably noticed by now, the more views you have and the more interactive your apps become, the more calls you need to make to findViewById(). And if you’re getting tired of typing the code for this method every time you want to work with a view, you’re not alone. In this chapter, you’ll discover how to make findViewById() a thing of the past by implementing view binding. You’ll find out how to apply this technique to both activity and fragment code, and you’ll learn why this approach is a safer, more efficient way of accessing your layout’s views. Let’s get started…

Behind the scenes of findViewById()

As you already know, each time you want to interact with a view in your activity or fragment code, you first call findViewById() to get a reference to it. The following activity code, for example, gets a reference to a Button with the ID start_button so that it can respond to clicks:

image

But what actually happens when findViewById() gets called?

findViewById() looks for a view in the view hierarchy

The following things happen when the above code runs:

  1. The MainActivity’s layout file (activity_main.xml) is inflated into a hierarchy of View objects.

    If the file ...

Get Head First Android Development, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.