当前位置: 首页 > 面试题库 >

如何更改SlidingTabLayout的文本颜色?

夏祺然
2023-03-14
问题内容

我制作了一个使用 ActionBarCompat* 的应用程序 *

我使用 SlidingTabLayout 类创建了选项卡。

该类是这样的:

SlidingTabLayout.java

但我无法更改标签的颜色…

我的viewpager片段是这样的:

<swmovil.fyb.SlidingTabLayout
    android:id="@+id/mTabs"
    android:layout_width="match_parent"
    android:layout_height="48dip" />

<android.support.v4.view.ViewPager
    android:id="@+id/mPager"
    android:layout_width="match_parent"
    android:layout_height="0px"
    android:layout_weight="1"
    android:background="@color/white" />

该应用程序运行良好,但我无法更改标签的 颜色文本

看到以下示例后,我制作了该应用程序:

rudsonlive /导航抽屉-ViewPager-ActionBarCompat

如何更改标签文本的文本颜色?

谢谢 !!!


问题答案:

1)首先在res(/ res / color)下创建color文件夹
2)在/ res / color文件夹下创建xml文件selector.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:color="@android:color/white" />
<item android:state_focused="true" android:color="@android:color/white" />
<item android:state_pressed="true" android:color="@android:color/white" />
<item android:color="#504f4f" /> 
</selector>

3)然后在SlidingTabLayout的populateTabStrip()方法中

tabTitleView.setTextColor(getResources().getColorStateList(R.color.selector));

现在您有了选择器,可以在任何需要的事件上更改文本的颜色

如果这样不起作用,请添加以下代码行。
a)最后在populateTabStrip()方法中添加此内容

if (i == mViewPager.getCurrentItem()) {
    tabView.setSelected(true);
}

和b)将onPageSelected()方法更改为此

    @Override
    public void onPageSelected(int position) {
        if (mScrollState == ViewPager.SCROLL_STATE_IDLE) {
            mTabStrip.onViewPagerPageChanged(position, 0f);
            scrollToTab(position, 0);
        }
        for (int i = 0; i < mTabStrip.getChildCount(); i++) {
            mTabStrip.getChildAt(i).setSelected(position == i);
        }
        if (mViewPagerPageChangeListener != null) {
            mViewPagerPageChangeListener.onPageSelected(position);
        }
    }


 类似资料:
  • 问题内容: 我正在编写一个简单的扫雷游戏,现在可以运行,但是我正在处理一些漂亮的细节,例如使每个数字使用不同的颜色。 尝试在上设置文本颜色时,我总是遇到错误。我可以很容易地更改文本和背景,但是不能专门更改文本颜色。 导致一切混乱的部分是: 由于某种原因,我的错误是: 每当我尝试编译时都会发生这种情况,但是当我将其更改为说而不是正常工作时,就会发生这种情况。 问题答案: 对于JButton未定义。要

  • 如何将标题字体颜色更改为白色,填充为绿色?以下是我正在使用的类: 我相信,这是必须插入的代码。

  • 问题内容: 如何更改a的文本颜色? 问题答案: 您必须访问UISearchBar内部。您可以通过使用 Swift 3更新

  • 我想根据用户需要将我写的文本(和字体颜色)更改为另一种颜色。 我制作了一个JFrame,并添加了JTextPane。在文本窗格的右侧,我有一个不同颜色的列表(“白色”、“黑色”、“绿色”等)。Jframe还有一个JMenuBar,如果用户突出显示列表中的一个元素(比如黑色),我想更改textpane的背景色(我知道这很愚蠢,但这是老师的作业) 问题是,文本是黑色的,所以当我改变背景颜色时,文本“消

  • 问题内容: 我想在字体为时使用光标。 那可能吗? 问题答案: 您可以定制一个。

  • 我正在尝试改变VS代码中突出显示文本的选定文本。有3种方式我可以选择文本。 我当前的编辑器设置是: (1)当我第一次单击或选择一个文本字符串时,然后使用,我可以选择一个文本字符串的下一次出现: 如何使选定的文本在背景中变成黄色(我已经用深灰色文本做过了)?