我正在使用eclipse IDE中的一个简单的android应用程序,我在xml代码行的左侧有一个黄色小图标,看起来像一个旁边有感叹号的灯泡。当我徘徊时,它说" [I18N]硬编码字符串"输入...,应该使用@string资源输入"。运行和调试是成功的,但我只是想摆脱它,因为我发现它很烦人。我该怎么办?
答案 0 :(得分:2)
如果它很烦人,那就有一个道理。你完全应该使用@string资源而不是你的硬编码字符串。您所要做的就是将您的字符串放在res / values / strings.xml中,并通过@ string / my_string_id_here在您的布局中引用它。
这对多语言支持或复数字符串非常有用。
您可以了解更多here。
希望这会对你有所帮助。
答案 1 :(得分:1)
正确的方式:
按照建议将所有字符串移动到资源文件中,并在您的视图中引用它们,如下所示:@string/mystringname
“其他”方式:
在Window/Preferences/Android/Lint Error Checking
两种方式都会消除那个恼人的三角形:)
答案 2 :(得分:0)
此警告是因为不建议将字符串硬编码到Android应用程序的Java源代码中。它会编译好 - 但是Android Lint会抱怨它,所以这就是为什么它是“警告”而不是“错误”。通常,最好在单独的“string.xml”文件中定义它们。
如果您想知道原因,请查看this answer 例如,请检查this answer 您还应该查看string resources的官方文档。