2015-09-15 81 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