0
  xmlns:tools="http://schemas.android.com/tools" 

これは私の問題です「名前空間宣言は決して使用されません」と言われています

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
    <TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="josh appear here"
    android:id="@+id/josh_text_view"
    />

    <Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="open Second Activity"
    android:layout_below="@+id/josh_text_view"
    android:onClick="showJosh"
    android:id="@+id/button" />

    <Button
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="open Third Activity"
    android:onClick="showJosh"
    android:id="@+id/button2"

すべてのボタンには、常にポップアップするこの警告があります

[I18N] ハードコードされた文字列 "open Second Activity", should use @string resource less... (Ctrl+F1) レイアウト ファイルでテキスト属性を直接ハードコードすることは、いくつかの理由で良くありません:

  • 構成のバリエーションを作成する場合 (たとえば、横向きや縦向きなど)、実際のテキストを繰り返す必要があります (変更を加えたときに最新の状態に保つ必要があります)。

  • 既存の文字列リソースに新しい翻訳を追加するだけでは、アプリケーションを他の言語に翻訳することはできません。Android Studio と Eclipse には、このハードコードされた文字列をリソース ルックアップに自動的に抽出するクイックフィックスがあります。

            android:layout_below="@+id/button"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="10dp" />
    
            <Button
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="open Fourth Activity"
            android:onClick="showJosh"
            android:id="@+id/button3"
    
            android:layout_below="@+id/button"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="75dp" />
    
    </RelativeLayout>
    
4

1 に答える 1

0

Namespace declaration is not used is not an error. It's just a warning. You can delete that line if you want to but you can just leave it alone. Regarding the use of @string resource , it is considered best practice to define your string values inside the strings.xml file and reference them in your project. The strings.xml file is inside your res>values folder. For example: Inside your strings.xml file, there should be already some string resources present. Add the following line to the file

<string name="openThird">open Third Activity</string>

Now, inside your layout file, do this

<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/openThird"
android:onClick="showJosh"
android:id="@+id/button2"

Do the same with your other buttons. Define the string values inside your strings.xml and then use them in your layout.

于 2015-05-20T02:24:45.757 に答える