【问题标题】:Changing value of R.String Programmatically以编程方式更改 R.String 的值
【发布时间】:2012-03-06 13:53:46
【问题描述】:

你能在安卓程序中以编程方式更改 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 也没有找到任何帮助:(

【问题讨论】:

标签: android android-2.3-gingerbread


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

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

      【讨论】:

        【解决方案4】:

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

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

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

        【讨论】:

          猜你喜欢
          • 2011-07-25
          • 1970-01-01
          • 1970-01-01
          • 2012-04-09
          • 1970-01-01
          • 1970-01-01
          • 2016-12-10
          • 2020-02-18
          • 1970-01-01
          相关资源
          最近更新 更多