2015-09-15 23 views
0

我想使用pagerslidingtabStrip实现tablayout。我想设置所选标签和未选中标签的颜色。还有就是最近被添加到库“pstsactivateTextColor”的属性,但它会得到一个错误,而建设:使用pagerslidingtablayout设置标签文本颜色

未发现属性“pstsTabTextColor”

我用的是“astuetz资源标识符/ PagerSlidingTabStrip“库。

+0

你会得到什么错误?什么语言和操作系统?这是一个Android问题吗? – halfer

+0

是啊,这是一个机器人问题。试图构建一个具有选项卡布局的Android应用程序,并使用“astuetz/PagerSlidingTabStrip”库...错误是“没有找到属性'pstsTabTextColor'的资源标识符.. ..要更改选定和未选中选项卡的选项卡文本颜色 –

回答

0

Acording这个article,你可以设置所选择的选项卡和未选中标签的颜色,如果你自己添加ATTR:在“PagerSlidingTabStrip”文件

<attr name="pstsTabSelectedTextColor" format="color" /> 
<attr name="pstsTabUnselectedTextColor" format="color" /> 

,添加这些:

private static final int DEFAULT_TAB_TEXT_COLOR = 0xFF666666; 
private int tabSelectedTextColor; 
private int tabUnselectedTextColor; 

删除“tabTextColor”字段以及与其相关的任何内容。在代码

tabSelectedTextColor = a.getColor(R.styleable.PagerSlidingTabStrip_pstsTabSelectedTextColor, DEFAULT_TAB_TEXT_COLOR); 
    tabUnselectedTextColor = a.getColor(R.styleable.PagerSlidingTabStrip_pstsTabUnselectedTextColor, DEFAULT_TAB_TEXT_COLOR); 

,加setter方法&干将新领域我已经写了: 在CTOR,添加此。加入这个方法:

private void updateTabsTextColors() { 
    for (int i = 0; i < tabCount; i++) { 
     View v = tabsContainer.getChildAt(i); 
     if (v instanceof TextView) { 
      TextView tab = (TextView) v; 
      if (pager.getCurrentItem() == i) 
       tab.setTextColor(tabSelectedTextColor); 
      else tab.setTextColor(tabUnselectedTextColor); 
     } 
    } 
} 

呼叫“PageListener”类的“使用onPageSelected”这里面的功能,在新制定者,并在“updateTabStyles”的结束。

+0

对您有帮助吗? – Stanojkovic