3

我需要为选项卡创建一个特定的形状。它应该看起来像这样

在此处输入图像描述

是否可以通过形状创建它?还是只是将其用作图像?

我还看到有些人在必须创建非常专业的选项卡时使用这种方式:他们只是在 Photoshop 中创建所有选项卡的所有变体,选中和未选中,(例如,tab1_selected、tab1_unselected、...),但他们没有为每个选项卡创建图像,但文学他们创建整个 TabWidget 图像(例如,选择了 tab1 的图像,未选择其他选项卡),然后在选择某个选项卡时加载适当的图像。

  • 这是正确的方法吗?通过这种方式,您可以创建带有厚底分隔线等的非常酷的标签。
  • 我应该如何以这种方式加载整个 TabWidget 背景?通过background属性或其他方式的通常方式?
4

1 回答 1

4

使用以下代码,MyClassin 代码是编写代码的ClassName

tabHost.setOnTabChangedListener(new OnTabChangeListener() {
        @Override
        public void onTabChanged(String tabId) {
            MyClass.setTabColor(tabHost);
        }
    });

public static void setTabColor(TabHost tabhost) {
    for(int i=0;i<tabhost.getTabWidget().getChildCount();i++) {
        tabhost.getTabWidget().getChildAt(i).setBackgroundResource(R.drawable.tab_bg); //unselected
    }
    tabhost.getTabWidget().getChildAt(tabhost.getCurrentTab()).setBackgroundResource(R.drawable.tab_bg_selected); // selected
}
于 2011-06-23T14:58:06.427 回答