J'ai besoin d'afficher une barre de défilement sur une disposition d'onglet à défilement horizontal.
J'ai essayé ce qui suit sans succès:
<com.google.android.material.tabs.TabLayout android:id="@+id/tabLayout" app:tabMode="scrollable" android:scrollIndicators="bottom" android:scrollbarTrackHorizontal="@color/black" android:scrollbars="horizontal" android:scrollbarSize="2dp" android:isScrollContainer="true" android:scrollbarFadeDuration="0" android:scrollbarAlwaysDrawHorizontalTrack="true" android:scrollbarStyle="insideOverlay" android:scrollbarThumbHorizontal="@android:color/darker_gray" //Not relevant parts below app:tabSelectedTextColor="@color/blue" android:layout_width="0dp" android:layout_height="wrap_content" app:layout_constraintTop_toTopOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:tabTextAppearance="@style/TabTextAppearance" android:background="@color/white" android:visibility="visible" android:backgroundTint="@color/very_light_gray" app:tabIndicatorColor="@color/blue"/>
3 Réponses :
Essayez de régler la hauteur de l'indicateur.
app:tabIndicatorHeight="5dp"
non, cela définit la hauteur de l'indicateur d'onglet actif. Je veux dire l'indicateur de position de défilement%.
juste ce code: app: tabMode = "scrollable"
Utilisez ce code:
tabLayout.setHorizontalScrollBarEnabled(true);
couvrir votre TabLayout avec horizontalscrollview. Et définir des styles
vous voulez dire, placez le tablayout dans un parent horizontalscrollview?
oui c'est ce que je veux dire
Je peux obtenir la barre de défilement horizontale pour montrer si j'ajoute un parent scollview horizontal, mais le problème est que la méthode de tablayout: setScrollPosition () ne fait pas défiler visiblement le tablayout jusqu'à la position correcte (bien que l'onglet sélectionné soit mis à jour).