0

I am working on a simple android application in eclipse IDE and I got a little yellow icon on the left hand side of a line of xml code that looks like a light bulb with an exclamation mark beside it. When I hovered over, it says "[I18N] Hardcoded string "input..., should use @string resource input". The running and debug was successful but I just want to get rid of it as I find it annoying. What should I do?

4

3 に答える 3

2

うるさいなら、それには理由があります。ハードコーディングされた文字列の代わりに @string リソースを完全に使用する必要があります。文字列を res/values/strings.xml に配置し、@string/my_string_id_here を介してレイアウトで参照するだけです。

これは、多言語サポートや複数形の文字列に非常に役立ちます。

詳細については、こちらをご覧ください

これがあなたを助けることを願っています。

于 2013-06-05T18:31:24.713 に答える
1

正しい方法:

提案されているように、すべての文字列をリソース ファイルに移動し、次のようにビューで参照します。@string/mystringname

反対に:

で Eclipse の Lint 警告をオフにします。Window/Preferences/Android/Lint Error Checking

ここに画像の説明を入力

どちらの方法でも、その厄介な三角形が削除されます:)

于 2013-06-05T18:32:08.683 に答える
0

Android アプリの Java ソース コードに文字列をハードコーディングすることは推奨されないため、この警告が表示されます。正常にコンパイルされますが、Android Lintはそれについて文句を言うので、これは「エラー」ではなく「警告」です。通常は、別の「string.xml」ファイルで定義することをお勧めします。

理由を知りたい場合は、この回答を確認してください。例については、この回答
を確認してください。文字列リソース の公式ドキュメントも参照してください。

于 2013-06-05T18:33:34.707 に答える