Deshabilitar animación suave al hacer clic en las pestañas con ViewPagerIndicator

Estoy usando TabPageIndicator de ViewPagerIndicator lib con ViewPager para mostrar 6 fragmentos. Supongamos que estoy en la primera página, si hago clic en la sexta pestaña, veré todas mis páginas desplazadas. ¿Es posible desactivar esta animación? Tal vez puedo desactivar de alguna manera en ViewPager?

Aquí está el código del adaptador:

public class TabBarFragmentPagerAdapter extends FragmentPagerAdapter implements IconPagerAdapter { private final List<Fragment> items; private static final String[] TITLES = new String[] { "Home", "Profile", "Explore", "Contacts", "Beacon" }; private static final int[] ICONS = new int[] { R.drawable.icon_tabbar_home_bg, R.drawable.icon_tabbar_profile_bg, R.drawable.icon_tabbar_explore_bg, R.drawable.icon_tabbar_contacts_bg, R.drawable.icon_tabbar_beacon_bg }; public TabBarFragmentPagerAdapter(FragmentManager fm, List<Fragment> items) { super(fm); this.items = items; } @Override public Fragment getItem(int position) { return items.get(position); } @Override public int getIconResId(int index) { return ICONS[index]; } @Override public CharSequence getPageTitle(int position) { return TITLES[position]; } @Override public int getCount() { return items.size(); } } 

Otra opción es anular el setCurrentItem(int i) en una clase ViewPager subclasifica ViewPager esta manera:

 @Override public void setCurrentItem(int item) { super.setCurrentItem(item,false); } 

He investigado el código de TabPageIndicator y he encontrado que es imposible por ahora. Vea el código de mTabClickListener:

 private final OnClickListener mTabClickListener = new OnClickListener() { public void onClick(View view) { TabView tabView = (TabView)view; final int oldSelected = mViewPager.getCurrentItem(); final int newSelected = tabView.getIndex(); mViewPager.setCurrentItem(newSelected); if (oldSelected == newSelected && mTabReselectedListener != null) { mTabReselectedListener.onTabReselected(newSelected); } } }; 

Para apoyar esta característica debemos agregar el segundo parámetro a setCurrentItem. Algo como esto:

 mViewPager.setCurrentItem(newSelected, smoothScrollEnabled); 
  • Android ViewPager guardar página anterior en onPageSelected
  • Cambiar dinámicamente el recuento de PagerIndicator en ViewPager o PagerAdapter
  • Insertar páginas en el medio de un FragmentPageAdapter
  • Asistente condicional / inicialización con ViewPager
  • ViewPagerIndicator - Establece TabPageIndicator en el centro
  • ViewPagerIndicator CirclePageIndicator no se puede instanciar
  • Cómo implementar en el icono de escuchar el clic en IconPageIndicator
  • Imágenes en lugar de textos de título en las pestañas del widget ViewPagerIndicator
  • Aparato de vista de Android con indicador de página
  • ViewPagerIndicator no muestra el texto del título
  • Espacio entre elementos del indicador
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.