Android:strings.xml中的文本显示为@numbers

时间:2013-06-26 18:15:26

标签: android string text

我在strings.xml中更新了一些字符串值,我的应用程序现在不显示新文本,而是显示@ 234545201。我已经清理了预测和重建,没有导入android.R任何地方,只是R与我的包相关。出了什么问题?

3 个答案:

答案 0 :(得分:6)

要从strings.xml文件中获取字符串,您可以执行以下操作。

如果你需要它作为一个String对象,你可以使用getString(R.string.string_id)来获取给定ID的字符串。

如果您尝试设置TextView的文本,您实际上只需使用setText(R.string.string_id),操作系统就会为您获取正确的字符串。

换句话说,TextView类有一个名为setText(int resid)的方法,这也是你不能写下面内容的原因:

TextView.setText(12345680);

答案 1 :(得分:2)

您是否尝试直接将其作为R.string.my_string_resource阅读? 尝试将getString()作为getString(R.string.my_string_resource)传递给它。

答案 2 :(得分:1)

您可以将strings.xml文件格式化为以下格式。

<?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"