2013-08-19 6 views
2

Как установить FragmentTabHost цвет текста вкладки. Я попробовал следующий код, но это не сработало.
Как установить цвет текста вкладки FragmentTabHost

((TextView) mTabHost.getCurrentTabView() 
       .findViewById(android.R.id.title)).setTextColor(0xFFFFFFFF); 


Это дает NPE заявив, что не может найти TextView.

+0

см это это может, полезно для вас .. [изменить цвет вкладки] [1] [1]: http://stackoverflow.com/questions/7783157/ android-text-and-color-on-tabs-tab-layout –

+0

Пожалуйста, обратитесь к этому сообщению: http://stackoverflow.com/a/14853097/874752 –

ответ

4

Это было немного сложнее. Я использовал следующий код, и это сработало для меня.

for (int i = 0; i < tabhost.getTabWidget().getChildCount(); i++) { 

     final TextView tv = (TextView) tabhost.getTabWidget().getChildAt(i) 
       .findViewById(android.R.id.title); 

      // Look for the title view to ensure this is an indicator and not a divider.(I didn't know, it would return divider too, so I was getting an NPE) 
     if (tv == null) 
      continue; 
     else 
      tv.setTextColor(0xFFFFFFFF); 
} 
1
let's try this : 
for example when you add your tab make your Indicator : 

    TextView view = .... 
    vew.setTextColor(...) 

затем setIndicator с пользовательской точки зрения:

mTabHost.addTab(mTabHost.newTabSpec("simple").setIndicator(view), 
        FragmentStackSupport.CountingFragment.class, null); 
+0

Я пробовал это, но я хочу, чтобы макет табуляции был таким же, как и по умолчанию , Если я это сделаю, он удалит цвет фона основной вкладки. – Manjunath

Смежные вопросы