Android offers a powerful model for building user interfaces, based on fundamental layout components View and ViewGroup. The platform includes a prebuilt set that you can use to construct your UI, but making your own may be easier than you think—and it will make your code around complex UIs cleaner and much easier to understand.

In this workshop we'll see how some of Android's widgets and layouts are put together, how you can expand on them and of course you'll get your hands dirty with making some of your own. We'll look into best practices, such as accessibility, measuring and memory management.