Book Image

Creating Dynamic UI with Android Fragments

By : Jim Wilson
Book Image

Creating Dynamic UI with Android Fragments

By: Jim Wilson

Overview of this book

To create a dynamic and multi-pane user interface on Android, you need to encapsulate UI components and activity behaviors into modules that you can swap into and out of your activities. You can create these modules with the fragment class, which behaves somewhat like a nested activity that can define its own layout and manage its own lifecycle. When a fragment specifies its own layout, it can be configured in different combinations with other fragments inside an activity to modify your layout configuration for different screen sizes (a small screen might show one fragment at a time, but a large screen can show two or more). Creating Dynamic UI with Android Fragments shows you how to create modern Android applications that meet the high expectations of today's users. You will learn how to incorporate rich navigation features like swipe-based screen browsing and how to create adaptive UIs that ensure your application looks fantastic whether run on a low cost smartphone or the latest tablet. This book looks at the impact fragments have on Android UI design and their role in both simplifying many common UI challenges and providing new ways to incorporate rich UI behaviors. You will learn how to use fragments to create UIs that automatically adapt to device differences. We look closely at the roll of fragment transactions and how to work with the Android back stack. Leveraging this understanding, we then explore several specialized fragment-related classes like ListFragment and DialogFragment as well as rich navigation features like swipe-based screen browsing.
Table of Contents (13 chapters)

Special purpose fragment classes


Now that we understand the lifecycle 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 they all ultimately inherit from the Fragment class and therefore experience the same lifecycle behavior. Many of these specialized classes have an impact on what operations are safe to perform at the various points in the lifecycle, and some of these classes even add their own lifecycle methods. Understanding each of these classes and their interaction with the fragment lifecycle is essential for using the classes effectively.

ListFragment

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 a 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 the...