当选择标签X时,如何更改图标?

时间:2010-06-24 17:25:42

标签: android android-tabhost

我有一个带有图标的tabhost,当选择一个标签X时,图标不会出现,因为该图标与所选标签的颜色相同。问题是:

当选择标签X时,如何更改图标?

2 个答案:

答案 0 :(得分:16)

这就是我所拥有的:

//TabActivity.onCreate()
TabHost tabHost = getTabHost();
TabHost.TabSpec spec;
Intent intent;

intent = new Intent().setClass(this, YourClass.class);
spec = tabHost.newTabSpec("tab_name").setIndicator("Tab Text",
            getResources().getDrawable(R.drawable.ic_tab_dialer))
            .setContent(intent);
tabHost.addTab(spec);

然后,您需要使用以下内容将ic_tab_dialer.xml添加到res/drawable/目录:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true"
        android:state_pressed="false"
        android:drawable="@drawable/ic_tab_selected_dialer" />
    <item android:drawable="@drawable/ic_tab_unselected_dialer" />
</selector>

我从通讯录应用GIT回购中下载了图标:

GIT中://android.git.kernel.org/platform/packages/apps/Contacts.git

答案 1 :(得分:1)