Android レイアウトに要素を追加すると、コンパイラ (eclipse) は要素の属性に関する警告を表示しandroid:text="Text"
ます。次の警告の意味は何ですか。
"[118N] ハードコードされた文字列 "Text"、@string リソースを使用する必要があります"
「myString%」のような文字列で @ を追加すると、エラーが発生します。
Android レイアウトに要素を追加すると、コンパイラ (eclipse) は要素の属性に関する警告を表示しandroid:text="Text"
ます。次の警告の意味は何ですか。
"[118N] ハードコードされた文字列 "Text"、@string リソースを使用する必要があります"
「myString%」のような文字列で @ を追加すると、エラーが発生します。
警告はリント警告です。バグの可能性について警告します。必要に応じて無視できます。しかし、私はそれが有用な情報だと感じています。
文字列値を textview にハードコーディングする代わりに、strings.xml で文字列を定義し、@strings/mystring のように同じものを参照します。
からの引用
http://tools.android.com/tips/lint
Android Lint は、ADT 16 (および Tools 16) で導入された新しいツールで、Android プロジェクト ソースをスキャンして潜在的なバグを探します。これは、コマンド ライン ツールとしてだけでなく、Eclipse (以下で説明) および IntelliJ (詳細) と統合されたものとしても利用できます。アーキテクチャは意図的に IDE に依存しないため、他の IDE、他のビルド ツール、および継続的統合システムとも統合されることが期待されます。
糸くずチェックリストはこちら
http://tools.android.com/tips/lint-checks
解決する
res/values/strings.xml でリソースを定義します
<string name="hello_world">Hello world!</string>
そしてxmlで
android:text="@string/hello_world"
警告は、コントロールのテキスト属性にハードコーディングテキストの代わりに文字列リソースを使用すること
をお勧めします。「ユニットとして「px」を使用しないでください。代わりに「dp」を使用してください」などの警告以上のものがあります。
良いアプリを開発するのにとても役立ちます