Android 在某些设备中使用黑色背景的TabHost

Android 在某些设备中使用黑色背景的TabHost,android,tabs,Android,Tabs,Hi有一个如下设置的TabHost: convertView = mInflater.inflate(R.layout.datatab, parent, false); TabHost tabs = (TabHost) convertView.findViewById(android.R.id.tabhost); TextView microTitle = (TextView) convertView.findViewById(R.id.dataTabsTitle); microTitle.se

Hi有一个如下设置的
TabHost

convertView = mInflater.inflate(R.layout.datatab, parent, false);
TabHost tabs = (TabHost) convertView.findViewById(android.R.id.tabhost);
TextView microTitle = (TextView) convertView.findViewById(R.id.dataTabsTitle);
microTitle.setTypeface(fontBold);

tabs.setup();
TabSpec tab1 = tabs.newTabSpec("TabOne");
TabSpec tab2 = tabs.newTabSpec("TabTwo");
TabSpec tab3 = tabs.newTabSpec("TabThree");
tab1.setContent(this);
tab2.setContent(this);
tab3.setContent(this);
tab1.setIndicator(mContext.getString(R.string.dataOneTitle));
tab2.setIndicator(mContext.getString(R.string.dataTwoTitle));
tab3.setIndicator(mContext.getString(R.string.dataThreeTitle));
tabs.addTab(tab1);
tabs.addTab(tab2);
tabs.addTab(tab3);
tabs.addTab(tab4);
tabs.setup();
tabs.setOnTabChangedListener(this);
for (int i = 0; i < tabs.getTabWidget().getChildCount(); i++) {
    View v = tabs.getTabWidget().getChildAt(i);
    v.setBackgroundColor(mContext.getResources().getColor(android.R.color.white));
    v.setBackgroundResource(R.drawable.orangetabs_tab_indicator_holo);

    TextView tv = (TextView) tabs.getTabWidget().getChildAt(i).findViewById(android.R.id.title);
    tv.setTextColor(mContext.getResources().getColor(R.color.colorone));
    tv.setTypeface(fontBold);
}
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>
convertView=mInflater.flate(R.layout.datatab,父项,false);
TabHost tabs=(TabHost)convertView.findviewbyd(android.R.id.TabHost);
TextView microTitle=(TextView)convertView.findViewById(R.id.datatabstile);
缩微标题。设置字体(字体粗体);
tabs.setup();
TabSpec tab1=tabs.newTabSpec(“TabOne”);
TabSpec tab2=tabs.newTabSpec(“TabTwo”);
TabSpec tab3=tabs.newTabSpec(“TabThree”);
表1.设置内容(本);
表2.设置内容(本);
表3.设置内容(本);
tab1.setIndicator(mContext.getString(R.string.dataOneTitle));
tab2.setIndicator(mContext.getString(R.string.dataTwoTitle));
tab3.setIndicator(mContext.getString(R.string.dataThreeTitle));
tabs.addTab(tab1);
tabs.addTab(tab2);
tabs.addTab(tab3);
tabs.addTab(tab4);
tabs.setup();
tabs.setOnTabChangedListener(此);
对于(int i=0;i
drawable是使用生成的,如下所示:

convertView = mInflater.inflate(R.layout.datatab, parent, false);
TabHost tabs = (TabHost) convertView.findViewById(android.R.id.tabhost);
TextView microTitle = (TextView) convertView.findViewById(R.id.dataTabsTitle);
microTitle.setTypeface(fontBold);

tabs.setup();
TabSpec tab1 = tabs.newTabSpec("TabOne");
TabSpec tab2 = tabs.newTabSpec("TabTwo");
TabSpec tab3 = tabs.newTabSpec("TabThree");
tab1.setContent(this);
tab2.setContent(this);
tab3.setContent(this);
tab1.setIndicator(mContext.getString(R.string.dataOneTitle));
tab2.setIndicator(mContext.getString(R.string.dataTwoTitle));
tab3.setIndicator(mContext.getString(R.string.dataThreeTitle));
tabs.addTab(tab1);
tabs.addTab(tab2);
tabs.addTab(tab3);
tabs.addTab(tab4);
tabs.setup();
tabs.setOnTabChangedListener(this);
for (int i = 0; i < tabs.getTabWidget().getChildCount(); i++) {
    View v = tabs.getTabWidget().getChildAt(i);
    v.setBackgroundColor(mContext.getResources().getColor(android.R.color.white));
    v.setBackgroundResource(R.drawable.orangetabs_tab_indicator_holo);

    TextView tv = (TextView) tabs.getTabWidget().getChildAt(i).findViewById(android.R.id.title);
    tv.setTextColor(mContext.getResources().getColor(R.color.colorone));
    tv.setTypeface(fontBold);
}
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>
尽管我正在使用
v.setBackgroundColor(mContext.getResources().getColor(android.R.color.white))为每个视图设置背景色,在某些设备上,背景显示为黑色

<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>
知道我做错了什么吗

<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>
编辑

<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>
正如评论中所建议的,我已经尝试设置背景颜色(
tabs.setBackgroundColor(mContext.getResources().getColor(android.R.color.white))‌​;),但没有成功
它仍然是这样显示的:

convertView = mInflater.inflate(R.layout.datatab, parent, false);
TabHost tabs = (TabHost) convertView.findViewById(android.R.id.tabhost);
TextView microTitle = (TextView) convertView.findViewById(R.id.dataTabsTitle);
microTitle.setTypeface(fontBold);

tabs.setup();
TabSpec tab1 = tabs.newTabSpec("TabOne");
TabSpec tab2 = tabs.newTabSpec("TabTwo");
TabSpec tab3 = tabs.newTabSpec("TabThree");
tab1.setContent(this);
tab2.setContent(this);
tab3.setContent(this);
tab1.setIndicator(mContext.getString(R.string.dataOneTitle));
tab2.setIndicator(mContext.getString(R.string.dataTwoTitle));
tab3.setIndicator(mContext.getString(R.string.dataThreeTitle));
tabs.addTab(tab1);
tabs.addTab(tab2);
tabs.addTab(tab3);
tabs.addTab(tab4);
tabs.setup();
tabs.setOnTabChangedListener(this);
for (int i = 0; i < tabs.getTabWidget().getChildCount(); i++) {
    View v = tabs.getTabWidget().getChildAt(i);
    v.setBackgroundColor(mContext.getResources().getColor(android.R.color.white));
    v.setBackgroundResource(R.drawable.orangetabs_tab_indicator_holo);

    TextView tv = (TextView) tabs.getTabWidget().getChildAt(i).findViewById(android.R.id.title);
    tv.setTextColor(mContext.getResources().getColor(R.color.colorone));
    tv.setTypeface(fontBold);
}
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

TabHost
早就不推荐使用了,您需要使用
工具栏
碎片TabHost
。谢谢。我的应用程序很旧,现在我停止了开发,只提供了一些错误修复。这就是为什么我仍然需要使用它;你能给我看看布局吗@Favolas@hareesh145谢谢,但这并没有解决问题。请查看我的更新问题您已将直接子项带到选项卡Host is linearlayout。因此,获取该id并将背景设置为linearlayout@Favolas
<!-- Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_unselected_focused_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="false" android:drawable="@drawable/orangetabs_tab_selected_focused_holo"/>

<!-- Pressed --><!--    Non focused states -->
<item android:state_focused="false" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="false" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>

<!--    Focused states -->
<item android:state_focused="true" android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_unselected_pressed_holo"/>
<item android:state_focused="true" android:state_selected="true" android:state_pressed="true" android:drawable="@drawable/orangetabs_tab_selected_pressed_holo"/>