2013-06-26 12 views
1

我更新了strings.xml中的一些字符串值,而我的應用程序現在顯示的不是新文本,而是像@ 234545201。我已經清理了預計和重建,沒有任何地方導入android.R,只是R與我的包相關。什麼地方出了錯?Android:來自strings.xml的文本顯示爲@numbers

+0

顯示xml部分 – stinepike

+0

請發佈您使用這些字符串的代碼示例。它是XML還是Java?你有沒有試過運行一個項目>清潔? –

回答

2

你想直接讀取它作爲R.string.my_string_resource? 嘗試將它作爲getString(R.string.my_string_resource)傳遞給getString()。

5

要從strings.xml文件中獲取字符串,可以執行一些操作。

如果您需要它作爲String對象,則可以使用getString(R.string.string_id)來獲取給定ID的字符串。

如果您嘗試設置TextView的文本,您實際上可以簡單地使用setText(R.string.string_id),操作系統將爲您獲取正確的字符串。

換句話說,該TextView類有一個叫做setText(int resid)方法,而這也是爲什麼你不能寫類似以下內容:

TextView.setText(12345680); 
1

你可以把你stings.xml文件中的follwing格式。

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
<string name="app_name">Yamba</string> 
<string name="titleYamba">Yamba</string> 
<string name="titleStatus">Status Update</string> 
<string name="hintText">Please enter your 140-character status</string> 
<string name="buttonUpdate">Update</string> 
</resources> 

並使用該名稱作爲您的文本框ID的參考。

android:text="@string/app_name"