2012-03-06 136 views
6

您可以在android程序中以编程方式更改R.string的值吗?我需要提取一些API信息(例如电池状态,电池百分比,Android操作系统版本),并且希望为它保存一个R.string值。我知道如何阅读:更改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并没有发现助阵要么:(

+1

R中的字符串是在编译时生成的,不能修改,据我所知。您可以将您的字符串保存为SharedPreferences:http://developer.android.com/guide/topics/data/data-storage.html#pref – Jave 2012-03-06 13:56:50

回答

11

你可以用” t动态更改strings.xml,因为它是一个编译资源。还有其他一些在Android中保存数据的机制,这里有一个很好的帖子,涵盖了这个主题:Data Storage。希望这可以帮助。

2

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

0

有很多方法来完成你的想法。但是,您不能更改您的字符串资源(以及R.java资源)或布局资源...以及任何其他资源。您可以通过将资源更改为资源来完成此操作。这可以读取和写入:)

0

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

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

现在你可以进一步使用这个(str)字符串变量的值。
但根据我没有办法设置res /字符串的值