1

StyleMe 的图片是 style_link

这是一张图片。我想要这样的 tabview 图像背景。当它未被选中时,它显示白色图像,当它被选中时,它显示绿色图像。

这是代码:

Resources resources = getResources();
TabHost tabhost = getTabHost();
Intent one = new Intent().setClass(this, StyleMe.class);
TabSpec tb1=tabhost.newTabSpec("One").setIndicator("",resources.getDrawable
(R.drawable.style_link)).setContent(one); 
tabhost.addTab(tb1);
4

1 回答 1

0

更好的解决方案是使用带有选择器的背景,因此您不必检查 onTabChanged 并进行手动更新。:

private void initTabsAppearance(TabWidget tabWidget) {
    // Change background
    for(int i=0; i < tabWidget.getChildCount(); i++)
        tabWidget.getChildAt(i).setBackgroundResource(R.drawable.tab_bg);
}

其中 tab_bg 是带有选择器的 xml 可绘制对象:

<selector xmlns:android="http://schemas.android.com/apk/res/android">    
    <item android:state_selected="true" android:drawable="@drawable/tab_bg_selected" />
    <item android:drawable="@drawable/tab_bg_normal" />
</selector>

希望这会有所帮助。

于 2013-03-01T03:53:36.693 回答