2010-12-09 101 views
1

我已經關注了Tab視圖的教程here。每個選項卡現在都有一個圖像,但是當我選擇一些選項卡時,它不會被替換爲黑色圖像。有一些我不知道的技巧。對於一個標籤Forexample代碼選項卡視圖選中的圖像不能正常工作

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但它沒有發生。其餘的代碼與教程類似。 我在這裏遺漏的是選定的圖像沒有被切換。

感謝

回答

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) 

它應該工作即可。