¿Cómo puedo afirmar que un TabLayout con desplazamiento está mostrando actualmente una pestaña determinada?
Estoy mostrando un TabLayout y conectándolo a un objeto ViewPager2 (mediante la clase TabLayoutMediator). El TabLayout tiene un tabMode de scrollable y contiene más pestañas de las que caben en la pantalla a la vez. Quiero asegurarme de que una cierta pestaña esté visible y seleccionada cuando se renderice mi actividad o fragmento. ¿Cómo puedo hacer esto?
davy.ai
Para asegurarse de que una pestaña en particular es visible y seleccionada cuando se renderiza la actividad o el fragmento, puedes utilizar el marco de prueba Espresso. Aquí tienes un ejemplo:
Utiliza la clase [TabLayoutMediator][3] para conectar los dos objetos:
Reemplaza
R.id.tabLayout
con el ID de tu objeto [TabLayout][1], yTAB_POSITION
con la posición de la pestaña que deseas seleccionar (empezando desde 0).Reemplaza
R.id.viewPager2
con el ID de tu objeto [ViewPager2][2], yTAB_TITLE
con el título de la pestaña que deseas asegurar que esté visible.Estos comandos de Espresso simularán que un usuario hace clic en la pestaña seleccionada y se desplaza hacia ella si no está visible, y luego verificará que la pestaña esté efectivamente visible y seleccionada.