2

Android レイアウトに要素を追加すると、コンパイラ (eclipse) は要素の属性に関する警告を表示しandroid:text="Text" ます。次の警告の意味は何ですか。

"[118N] ハードコードされた文字列 "Text"、@string リソースを使用する必要があります"

「myString%」のような文字列で @ を追加すると、エラーが発生します。

4

5 に答える 5

3

警告はリント警告です。バグの可能性について警告します。必要に応じて無視できます。しかし、私はそれが有用な情報だと感じています。

文字列値を 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"  
于 2013-07-20T07:05:29.820 に答える
0

警告は、コントロールのテキスト属性にハードコーディングテキストの代わりに文字列リソースを使用すること
をお勧めします。「ユニットとして「px」を使用しないでください。代わりに「dp」を使用してください」などの警告以上のものがあります。
良いアプリを開発するのにとても役立ちます

于 2013-07-20T07:28:26.433 に答える