Save the date! Android Dev Summit is coming to Sunnyvale, CA on Oct 23-24, 2019.

ViewPager2

Version 1.0.0-alpha03

April 3rd, 2019

androidx.viewpager2:viewpager2:1.0.0-alpha03 is released. The commits included in this version can be found here.

New features

  • Ability to programmatically scroll ViewPager2: fakeDragBy(offsetPx).

API changes

  • FragmentStateAdapter now requires a Lifecycle object. Two utility constructors added to obtain it from the host FragmentActivity or the host Fragment.

Bug fixes

  • Numerous Fragment support fixes:
    • handling dataset updates while minimised, or during a screen rotation;
    • removing irrelevant Fragments after rotation;
    • removing saved state of removed items.
  • PageChangeCallback: fixed page offset calculation for pages with margins.

Version 1.0.0-alpha02

March 13th, 2019

androidx.viewpager2:viewpager2:1.0.0-alpha02 is released. The full list of commits included in this version can be found here.

New features

  • Ability to disable user input (setUserInputEnabled, isUserInputEnabled)

API changes

  • ViewPager2 class final

Bug fixes

  • FragmentStateAdapter stability fixes

Version 1.0.0-alpha01

February 7, 2019

androidx.viewpager2:viewpager2 1.0.0-alpha01 is released. This is the first release of ViewPager2.

New features

  • Comparing to its predecessor android.support.v4.view.ViewPager (VP1):
    • Right-to-left (RTL) layout support
    • Vertical orientation support
    • notifyDataSetChanged fully functional (VP1 bugs addressed)

API changes

  • FragmentStateAdapter replaces FragmentStatePagerAdapter
  • RecyclerView.Adapter replaces PagerAdapter
  • registerOnPageChangeCallback replaces addPageChangeListener

Known issues

  • clipToPadding
  • no fakeDrag
  • JavaDoc
  • nested scrolling parallel to orientation
  • no offscreen limit control
  • needs better TabLayout integration
  • no pageWidth setter (forced 100%/100%)
  • page transformer: no hardware/software layer choice; no reverse drawing order
  • keep current item visible when inserting a page before current
  • keyboard navigation needs work
  • FragmentStateAdapter stability / performance improvements coming