6

你可以在安卓程序中以编程方式更改 R.string 的值吗?我需要提取一些 API 信息(例如电池状态、电池百分比、android 操作系统版本)并希望将其保存为 R.string 值。我知道如何阅读它:

 String helloValue= getResources().getString(R.string.hello);

我还看过:Change value of R.string programically?但似乎这只涉及改变语言,他最终以不同的方式做这件事。有人可以帮忙吗?我也看过这里: http: //developer.android.com/guide/topics/resources/string-resource.html也没有找到任何帮助:(

4

4 回答 4

12

您不能动态更改 strings.xml,因为它是编译资源。在 Android 中还有其他保存数据的机制,这里有一篇很好的文章涵盖了这个主题:数据存储。希望这可以帮助。

于 2012-03-06T13:56:51.760 回答
2

如果您需要保存少量的字符串信息,您应该使用SharedPreferences这正是它的用途:)

于 2012-03-06T13:55:43.460 回答
0

有很多方法可以完成你的想法。但是,您不能更改您的 String 资源(以及 R.java 资源)或布局资源......以及任何其他资源。您可以通过将资源更改为资产来做到这一点。这可以读写:)

于 2012-03-06T14:12:48.977 回答
0

您可以通过这种方式从 res/string 值中获取值。

String str = getResources().getString(R.string.<name_of_value>);

现在您可以进一步使用 this(str) String 变量的这个值。
但据我所知,没有办法设置 res/string 的值

于 2018-02-17T21:43:14.553 回答