更改Android TabWidget底栏颜色

时间:2011-05-31 01:57:26

标签: android tabwidget

如何更改TabWidget底栏的颜色?我已经成功更改了标签背景颜色,但是底部栏仍然是灰色/橙色,我在Android文档和源代码中找不到任何关于此的信息。谢谢。

3 个答案:

答案 0 :(得分:1)

请参阅:

启用/禁用此行: tabHost.getTabWidget().setStripEnabled(boolean);

为此行设置左侧的drawable: tabHost.getTabWidget().setLeftStripDrawable(drawable);

为此行设置左侧的资源 tabHost.getTabWidget().setLeftStripDrawable(resId);

为此行设置右侧的drawable: tabHost.getTabWidget().setRightStripDrawable(drawable);

为此行设置正确的资源: tabHost.getTabWidget().setRightStripDrawable(resId);

答案 1 :(得分:0)

我猜测“底栏”指的是分隔标签和内容的可选水平线。看一下the TabWidget API doc中描述的各种tabStrip属性。您可以为条带的左右部分设置不同的drawable。

答案 2 :(得分:0)

public void setTabColor(TabHost tabhost) { 
     int totalTabs = tabhost.getTabWidget().getChildCount();
     for(int i=0;i<totalTabs;i++) {
        if(tabHost.getTabWidget().getChildAt(i).isSelected()){
            tabHost.getTabWidget().getChildAt(i).setBackgroundResource(R.drawable.tab_selector); //selector xml for selected
            tabHost.getTabWidget().setStripEnabled(true);
            tabHost.getTabWidget().setRightStripDrawable(R.drawable.tab_strip_thin); 
            tabHost.getTabWidget().setLeftStripDrawable(R.drawable.tab_strip_thin);
        }
     }
    }