2

タブの背景を編集する方法を知っている人はいますか? また、テキストの色を白に変更しますか?

4

2 に答える 2

3

このコードを使用できます

TabHost.TabSpec spec;
TabHost tabHost = getTabHost();
spec = tabHost.newTabSpec("1").setIndicator("Tab Host 1", res.getDrawable(R.drawable.XXX)).setContent(intent_name);
tabHost.addTab(spec);
tabHost.setCurrentTab(2);
setTabColor(tabHost);
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
    @Override
    public void onTabChanged(String tabId) {
          setTabColor(tabHost);
    }
});
}

public static void setTabColor(TabHost tabhost) {
    for (int i = 0; i < tabhost.getTabWidget().getChildCount(); i++) {
        tabhost.getTabWidget().getChildAt(i).setBackgroundColor(Color.parseColor("#000000")); // unselected
    }

    tabhost.getTabWidget().getChildAt(tabhost.getCurrentTab()).setBackgroundColor(Color.parseColor("#74df00")); // selected
}
于 2012-06-28T10:51:04.273 に答える
0

drawables フォルダーに新しいファイルを作成します。たとえば、background.xml です。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- When selected, use red-->
    <item android:drawable="@drawable/gradient_red"
          android:state_selected="true"/>
    <!-- When not selected, use dark rebg-->
    <item android:drawable="@drawable/gradien_dark_red"/>
</selector>

背景に新しいドローアブルを使用します。

于 2012-06-28T10:41:12.003 に答える