【问题标题】:getResources().getString returns strange valuegetResources().getString 返回奇怪的值
【发布时间】:2012-10-29 14:06:21
【问题描述】:

在我的应用程序中,我将某个链接放在strings.xml 文件中,然后在应用程序的其余部分中使用它。这是我输入strings.xml文件的方式:

<string name="link">http://mylink/</string>

这里是我如何在我的活动中获得它:

String link = getResources().getString(R.string.link);

问题是这个字符串有时返回的不是字符串文件中的值。我经常收到#ff666666,这很奇怪。为什么有时它可以正常工作,有时却不行?

有人对此有任何想法吗?

提前致谢。

【问题讨论】:

  • 用相关的代码示例详细阐述'sometimes'
  • 如果我卸载应用程序并重新安装它,可能会出现此问题。有时会发生这种情况,有时运行良好,但有时无法从 xml 文件中获取值,在这种情况下,我的应用程序会显示警报,所以我无能为力。
  • 你从哪里调用 getResources().getString(R.string.link)?活动?服务?
  • 活动。在 onCreate() 中。

标签: android string hyperlink


【解决方案1】:

在运行项目之前,您需要再次CleanBuild

发生这种情况是因为有时在 R.java 文件中添加了未更新的新值,因此您需要清理以强制 R.java 文件刷新和更新自身。

【讨论】:

  • 尝试将您的字符串文件中的link 的名称更改为my_link,然后在您的Java 文件中进行引用,这将起作用
【解决方案2】:

尝试调试特定方法并检查 R.string.link 的值。它和你在 R.java 文件中看到的一样吗?有时在资源文件中移动内容时会遇到此问题。 Eclipse中的“Project->Clean...->Clean all projects”一般都能解决。

【讨论】:

    【解决方案3】:

    它工作正常。刚才我检查了以下几行。确保清理您的项目并构建它。

    <string name="link">http://www.google.com</string>
    
    
    String name = getResources().getString(R.string.link);
    Log.e("Name is:",name);
    

    【讨论】:

      猜你喜欢
      • 2020-10-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-11
      • 1970-01-01
      • 2021-09-12
      • 2013-04-26
      相关资源
      最近更新 更多