The following is the first few sections of a chapter from The Busy Coder's Guide to Android Development, plus headings for the remaining major sections, to give you an idea about the content of the chapter.
Android, over the years, has put increasing emphasis on UI design and having a fluid and consistent user experience (UX). While some mobile operating systems take “the stick” approach to UX (forcing you to abide by certain patterns or be forbidden to distribute your app), Android takes “the carrot” approach, offering widgets and containers that embody particular patterns that they espouse. The action bar, for example, grew out of this and is now the backbone of many Android activities.
Another example is the
ViewPager, which allows the user to swipe horizontally
to move between different portions of your content. However,
not distributed as part of the firmware, but rather via the Android Support
package. Hence, even though
ViewPager is a relatively new widget, you can use it on Android 1.6 and up.
This chapter will focus
on where you should apply a
ViewPager and how to set one up.
AdapterView classes, like
ListView, work with
Adapter objects, like
ViewPager, however, is not an
AdapterView, despite adopting
many of the patterns from
ViewPager, therefore, does not work
Adapter, but instead with a
PagerAdapter, which has a slightly
Android ships two
PagerAdapter implementations in the Android Support package:
FragmentStatePagerAdapter. The former is good for
small numbers of fragments, where holding them all in memory at once will work.
FragmentStatePagerAdapter is for cases where holding all possible fragments
to be viewed in the
ViewPager would be too much, where Android will discard
fragments as needed and hold onto the (presumably smaller) states of those
The preview of this section was whisked away by a shark-infested tornado.
The preview of this section was lost in the sofa cushions.
The preview of this section was stepped on by Godzilla.
The preview of this section took that left turn at Albuquerque.