TabLayout pestaña de pestaña seleccionada

TabLayout está configurado con ViewPager , tiene muchas pestañas, MODE_SCROLLABLE y keyline app:tabContentStart="72dp" .

Cuando el usuario selecciona una pestaña, TabLayout intenta desplazar la pestaña seleccionada hacia el centro. Quisiera que la lengüeta seleccionada fuera alineada a la línea dominante, no centrada. ¿Es posible?

Biblioteca de soporte de diseño de Android v22.2.0.

Desafortunadamente el método calculateScrollXForTab() de TabLayout es privado y luego no reemplazable por subclases. De cualquier manera puede copiar la fuente TabLayout en su proyecto, entonces posiblemente extenderlo con su clase, y cambiar el método calculateScrollXForTab() así:

 private int calculateScrollXForTab(int position, float positionOffset) { if (mMode == MODE_SCROLLABLE) { View final selectedChild = mTabStrip.getChildAt(position); // LoG.i ("scrollTo" String.valueOf ((int) selectedChild.getLeft())); return (int) selectedChild.getLeft(); } return 0; } 

Esto devuelve el valor del límite a la izquierda de la pestaña seleccionada, entonces el desplazamiento se ve forzado a ese valor. Las pestañas de extrema derecha permanecerán fijas en posición si se seleccionan porque el desplazamiento mantiene el desplazamiento hasta los límites del niño.

Lo intenté y funciona, aunque tuve que resolver dos problemas con un CompatTextView no encontrado en android.support.v7.internal.widget y el método setupWithViewPager() que no existe en la fuente disponible para mí (creo que una cuestión de versión)

Si he entendido bien su pregunta, puede restar la primera posición de la pestaña de la posición de la pestaña seleccionada. A continuación, sólo tiene que establecer el diferente como una posición para esta pestaña seleccionada.

  • Texto personalizado de BottomNavigationView support android
  • Cómo atenuar el fondo cuando se utiliza la parte inferior de la biblioteca de soporte?
  • Biblioteca de diseño de Android CoordinatorLayout, AppBarLayout y DrawerLayout
  • Pase el evento de desplazamiento a otra vista
  • CoordinatorLayout ignora márgenes para vistas con ancla
  • El tema personalizado interfiere con el color de fondo del bocadillo
  • Desactivar el desplazamiento de la barra de herramientas
  • Android: ¿Cómo trabajar con CoordinatorLayout y barra de navegación translúcida?
  • Comportamiento personalizado con el diseño del coordinador
  • BottomSheet con ViewPager y fragmentos?
  • Infla el menú en el tema de CollapsingToolbarLayout
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.