1

我更新了 strings.xml 中的一些字符串值,我的应用程序现在显示的不是新文本,而是 @234545201 之类的内容。我已经清理了投影和重建,任何地方都没有 import android.R,只有 R 与我的包相关。什么地方出了错?

4

3 回答 3

7

要从strings.xml文件中获取字符串,您可以做一些事情。

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

如果您尝试设置 a 的文本TextView,您实际上可以简单地使用setText(R.string.string_id),操作系统将为您获取正确的字符串。

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

TextView.setText(12345680);
于 2013-06-26T18:30:47.360 回答
3

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

于 2013-06-26T18:20:44.327 回答
1

您可以将 stings.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"
于 2013-06-26T19:24:49.527 回答