Summary

Potentially, this was one of the most complicated apps we have built. If it is at all unclear exactly what happened, the way to overcome this is to break it into pieces (or fragments).

Each Fragment has a class and a layout. The Fragment with the list communicates with the Activity via the interface, and the Activity either loads a new (detail) Fragment into itself (when in landscape) or starts a new Activity that loads the same (detail) Fragment when in the portrait orientation. All the data is tucked away in our singleton and can be basically forgotten about because it can only ever be instantiated once, and it is guaranteed that any class changing or reading the data will do so from the same instance.

Certainly, there may be some aspects ...

Get Android Programming for Beginners 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.