【问题标题】:how to set tab text colors differently in tablayout如何在tablayout中以不同方式设置选项卡文本颜色
【发布时间】:2021-09-16 17:57:20
【问题描述】:

mytablayout picture

我想将蓝色设置为“b”,橙色设置为“c”,紫色设置为“d”,红色设置为“e”。

app:tabTextColor="@color/"

此 xml 代码更改选项卡标题的“所有”颜色,因此我无法使用它。

谁能帮帮我?

【问题讨论】:

标签: android android-tablayout


【解决方案1】:

试试这个...

tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
    @Override
    public void onTabSelected(TabLayout.Tab tab) {
        viewPager.setCurrentItem(tab.getPosition());
        when (tab.getPosition()) {
            case 0 : {  
                tabLayout.setTabTextColors(otherTabsColor,blueColor);
                tabLayout.setSelectedTabIndicatorColor(ContextCompat.getColor(this, R.color.blue));       
                break;
            }

            case 1 : {  
                tabLayout.setTabTextColors(otherTabsColor,orangeColor);
                tabLayout.setSelectedTabIndicatorColor(ContextCompat.getColor(this, R.color.orange));       
                break;
            }
        }
    }
});

【讨论】:

  • 使用监听器!我会试试谢谢@farshad
  • 我试过了,但是setTabTextColors改变了所有标签的颜色
  • 我编辑了我的代码,现在它可以工作了 :)) tabLayout.setTabTextColors( otherTabsColor , currentTabColor );在此方法中,第一个参数是其他选项卡颜色,第二个参数是当前选项卡颜色。请试试这个。
【解决方案2】:

你可以试试这个

<android.support.design.widget.TabLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:tabMode="fixed"
        app:tabGravity="fill"
        android:background="@color/colorWhite"
        app:tabTextColor="@color/colorBlack"
        app:tabSelectedTextColor="@color/colorPrimary"/>

【讨论】:

  • 如何为每个标签设置不同的颜色?
  • 我同意@snachmsm,这是一个模糊的答案
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-10-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多