After replacing a ViewPager with a single fragment as such:
fragmentManager.beginTransaction ().replace ( R.id.content_frame, fragment ).commit ();
If I scroll to the right - which shouldn't me possible because there is only one page - I get an IllegalStateExceptio on onPageSelected, because apparently the OnPageChangeListener is still active.
How do I approach this?
mViewPager.setOnPageChangeListener ( new ViewPager.OnPageChangeListener () {
@Override
public void onPageSelected ( int position ) {
mActionBar.setSelectedNavigationItem ( position );
}
@Override
public void onPageScrolled ( int arg0, float arg1, int arg2 ) {
}
@Override
public void onPageScrollStateChanged ( int arg0 ) {
}
} );
Here's a hackish workaround. There's got to be a better way, but it works. To disable paging, set the viewpager adapter to one with 0 pages.
}