Book Image

Creating Dynamic UIs with Android Fragments - Second Edition

By : Jim Wilson
Book Image

Creating Dynamic UIs with Android Fragments - Second Edition

By: Jim Wilson

Overview of this book

Today’s users expect mobile apps to be dynamic and highly interactive, with rich navigation features. These same apps must look fantastic whether running on a medium-resolution smartphone or high-resolution tablet. Fragments provide the toolset we need to meet these user expectations by enabling us to build our applications out of adaptable components that take advantage of the rich capabilities of each individual device and automatically adapt to their differences. This book looks at the impact fragments have on Android UI design and their role in both simplifying many common UI challenges and in providing best practices for incorporating rich UI behaviors. We look closely at the roll of fragment transactions and how to work with the Android back stack. Leveraging this understanding, we explore several specialized fragment-related classes such as ListFragment and DialogFragment. We then go on to discuss how to implement rich navigation features such as swipe-based screen browsing, and the role of fragments when developing applications that take advantage of the latest aspects of Material Design. You will learn everything you need to provide dynamic, multi-screen UIs within a single activity, and the rich UI features demanded by today’s mobile users.
Table of Contents (13 chapters)

Special-purpose fragment classes

Now that we understand the life cycle of fragments, we can look at some of the specialized versions of the Fragment class. As we go through each of these specialized classes, remember that they all ultimately inherit from the Fragment class and therefore experience the same life cycle behavior. Many of these specialized classes have an impact on which operations are safe to perform at the various points in the life cycle, and some of these classes even add their own life cycle methods. Understanding each of these classes and their interaction with the fragment life cycle is essential to using the classes effectively.


One of the simplest fragment derived classes to use, and yet one of the most helpful, is the ListFragment class. The ListFragment class provides a fragment that encapsulates ListView and, as the name implies, is useful for displaying lists of data.

Associating data with the list

Unlike the base Fragment class, we're not required to override...