Creating the DatePickerLayout
Each of these areas can easily be encapsulated in a Java class and reused elsewhere in your application. In Chapter 3, Taking Actions, you wrote the DatePickerWrapper
class, which can turn any TextView
widget into a date selection widget. However, DatePickerWrapper
doesn't create the TextView
label or change the styling of the widgets to look like TextInputLayout
. This means that you need to copy that styling into each layout where you want a date-picker, which can quickly lead to inconsistencies in your user interface. While it's good to have the events and state decoupled from the display logic, it would also be nice to have them grouped together in a single structure that can be reused without every layout having to specify the date picker widgets by hand, and then bind them to the DatePickerWrapper
in its code.
While it's not obvious at first, the Android layout XML files can reference any View
class and not just those defined in the core and support packages...