Voici ma mise en page dans ViewPager
. Je voudrais changer la couleur du surligneur d'onglet actuel qui est en dessous du texte. En fait, il montre en couleur noire. Mais je ne sais pas si c'est une couleur par défaut ou non. Et aussi j'ai encore un doute. Si j'utilise PagerTitleStrip
, cet indicateur de surligneur n'apparaît pas. Y at-il un moyen d'apporter cela avec Titlestrip?
Voici ma mise en page:
<Android.support.v4.view.PagerTabStrip Android:id="@+id/pager_title_strip"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:layout_gravity="top"
Android:background="@color/pager_titlestrip_bg"
Android:textColor="@color/pager_titlestrip_text"
Android:paddingTop="5dp"
Android:paddingBottom="4dp" >
</Android.support.v4.view.PagerTabStrip>
Cela fonctionne juste.
PagerTabStrip pagerTabStrip = (PagerTabStrip) findViewById(R.id.pager_title_strip);
pagerTabStrip.setDrawFullUnderline(true);
pagerTabStrip.setTabIndicatorColor(Color.RED);
Merci!
Cela peut être fait à la fois par programme avec Java ou avec XML
Par XML
<Android.support.design.widget.TabLayout
Android:id="@+id/tabanim_tabs"
Android:layout_width="match_parent"
app:tabIndicatorHeight="4dp"
app:tabIndicatorColor="@Android:color/white"
Android:layout_height="wrap_content" />
Ou plus simplement, vous pouvez résoudre ce code aussi
tabLayout.setSelectedTabIndicatorColor(Color.parseColor("#FFFFFF"));
De même pour changer la hauteur
tabLayout.setSelectedTabIndicatorHeight((int) (2 * getResources().getDisplayMetrics().density));
Cela fonctionne dans mon projet.
<Android.support.design.widget.TabLayout
Android:id="@+id/tabs"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:background="#FFF"
app:tabGravity="fill"
app:tabIndicatorColor="@color/text3"
app:tabMode="scrollable"
app:tabSelectedTextColor="@color/text3"
app:tabTextColor="#000" />