2014-04-10 77 views
0

在strings.xml檔案,我有這樣的:如何解決「itemTag無法解析或不是字段」?

<resources> 
<string name="itemTag">1</string> 
<string name="item2Tag">2</string> 
</resources> 

但是當我通過這個進入活動,並嘗試訪問:

ib.setTag(R.string.itemTag, "itemTag"); 

它給出了itemTag一個錯誤:

itemTag cannot be resolved or is not a field 

這是什麼意思,我該如何解決它?

編輯:代碼:

public void changePicture(ImageButton ib) { 

ib.setTag(R.string.itemTag, "itemTag"); 
getResources().getString(R.string.itemTag); 
} 

回答

0

如果你想獲得一個String,那麼所有R.string.itemTag是編譯器是int。如果您在R類看,你會發現像下面這樣...

public static class string { 
    public static int itemTag = 0x30000; 
} 

連同所有您使用其他ID。你想要做什麼是以下...

getResources().getString(R.string.itemTag); 

你也應該嘗試通過Project>清潔清洗你的項目...

+0

事情是,我無法訪問「itemTag」,它彈出上面的錯誤,並且你說要把getResources()放在活動中嗎? – Piofmc

+0

是的,'getResources()'是一個'Activity'方法。 – tambykojak

+0

檢查路徑:「gen/your.app.package」你看到一個「R.java」文件嗎?如果不是,那麼該項目尚未建成。如果你不能建立你的項目,那麼你正在編譯問題。 – tambykojak

1

檢查你的Java import S,你可能已經導入了一個R.java與當前包中的不同。

刪除所有進口然後按Ctrl ++Ø的Eclipse(組織導入),並選擇正確的包導入。