1

我在这里关注了关于标签视图的教程。每个选项卡现在都有一个图像,但是当我选择某个选项卡时,它不会被深色图像替换。是否有一些我错过的技巧。例如,一个选项卡的代码是

 spec = tabHost.newTabSpec("create").setIndicator("Create",
                          res.getDrawable(R.drawable.testimg))
                      .setContent(intent);
        tabHost.addTab(spec);

然后我创建create.xml了以下内容

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- When selected, use grey -->
    <item android:drawable="@drawable/testimg2"
          android:state_selected="true" />
    <!-- When not selected, use white-->
    <item android:drawable="@drawable/testimg" />
</selector>

因此,当我选择创建选项卡时,它的图像应该已被 testimg2.png 替换,但它没有发生。其余代码与教程类似。我在这里缺少什么,选择的图像没有被切换。

谢谢

4

1 回答 1

1

你是这样做的,对吧?

spec = tabHost.newTabSpec("create").setIndicator("Create",
                      res.getDrawable(R.drawable.testimg))
                  .setContent(intent);
    tabHost.addTab(spec);

您必须将可绘制对象设置为“create.xml”

将“create.xml”放在“drawable”文件夹中(没有 hdpi、ldpi、mdpi。如果不存在任何“drawable”文件夹,请创建一个)(尽管可能没有必要仅将其放在“drawable”文件夹中,也许您也可以将它放在其他可绘制文件夹下,我还没有研究过,但这是一个很好的做法)

然后像这样设置它-

res.getDrawable(R.drawable.create)

它应该工作。

于 2010-12-09T13:12:14.233 回答