【问题标题】:Why the Text color in tablayout is different from the color.xml that i have defined?为什么 tablayout 中的文本颜色与我定义的 color.xml 不同?
【发布时间】:2017-07-31 15:52:24
【问题描述】:

我想更改 TabLayout 中的 textColor 显示,但是有一个问题,颜色与我在 colors.xml 中定义的不同。

Mainactivity.java:

 TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs);
    tabLayout.setupWithViewPager(mViewPager);
    tabLayout.setTabTextColors(R.color.tab_normal, R.color.tab_se);

colors.xml:

<color name="tab_normal">#e2e2e2</color>
<color name="tab_se">#ffffff</color>

这是 TabLayout,颜色不同。 [在此处输入图片描述]

但是如果:

tabLayout.setTabTextColors(Color.WHITE, Color.WHITE);

那么Tablayout中的文字颜色是正常的,是白色的。

对不起,我的英语不好。

https://i.stack.imgur.com/RhB60.png

【问题讨论】:

  • 你应该使用ContextCompat.getColor(YourActivityName.this,R.color.tab_normal)
  • BTW getResources().getColor(R.color.tab_normal) 已弃用。而是使用ContextCompat.getColor()..
  • 您目前使用的支持库版本是多少?
  • 或者只是在xml中使用..app:tabSelectedTextColor="@color/tab_se" app:tabTextColor="@color/tab_normal"
  • @Piyush ji 已编辑

标签: android xml android-layout android-tablayout


【解决方案1】:

试试这个

tabLayout.setTabTextColors(ContextCompat.getColor(MainActivity.this,R.color.selector));

【讨论】:

  • tabLayout.setTabTextColors(ContextCompat.getColor(MainActivity.this, R.color.tab_normal),ContextCompat.getColor(MainActivity.this,R.color.tab_se));
【解决方案2】:

您也可以在 XML 布局中使用。

    <android.support.design.widget.TabLayout
        app:tabIndicatorColor="@color/WhiteSmoke"
        app:tabSelectedTextColor="@color/tab_se"
        app:tabTextColor="@color/tab_normal" />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 2021-09-17
    • 2013-04-25
    • 1970-01-01
    • 2021-05-05
    • 1970-01-01
    相关资源
    最近更新 更多