【问题标题】:Annoying default formatting烦人的默认格式
【发布时间】:2013-06-05 18:23:57
【问题描述】:

我正在 Eclipse IDE 中开发一个简单的 android 应用程序,我在一行 xml 代码的左侧有一个黄色的小图标,看起来像一个灯泡,旁边有一个感叹号。当我将鼠标悬停在上面时,它显示“[I18N] 硬编码字符串“输入...,应该使用@string 资源输入”。运行和调试成功但我只想摆脱它,因为我觉得它很烦人。应该有吗?

【问题讨论】:

    标签: android xml


    【解决方案1】:

    如果它很烦人,那是有原因的。您完全应该使用 @string 资源而不是硬编码的字符串。您所要做的就是将您的字符串放入 res/values/strings.xml 并通过 @string/my_string_id_here 在您的布局中引用它。

    这对于多语言支持或复数字符串非常有用。

    您可以了解更多here

    希望这会对你有所帮助。

    【讨论】:

    • @AnneJones:更一般地说,这些是 Lint 警告,指出语法上有效但不太可能是正确答案的事情。
    【解决方案2】:

    正确的方法:

    按照建议将所有字符串移动到资源文件中,并在视图中引用它们,如下所示:@string/mystringname

    “其他”方式:

    Window/Preferences/Android/Lint Error Checking 中关闭 Eclipse 中的 Lint 警告

    这两种方法都会消除那个烦人的三角形:)

    【讨论】:

    • 第二个建议帮了大忙,现在所有的警告都消失了。
    【解决方案3】:

    出现此警告是因为不建议将字符串硬编码到 Android 应用的 Java 源代码中。它会编译得很好 - 但Android Lint 会抱怨它,所以这就是为什么它是“警告”而不是“错误”。通常,最好在单独的“string.xml”文件中定义它们。

    如果您想知道原因,请查看this answer
    例如,检查this answer
    您还应该查看string resources 的官方文档。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-29
      • 1970-01-01
      • 1970-01-01
      • 2018-02-12
      • 1970-01-01
      相关资源
      最近更新 更多