Объявление пространства имен никогда не используется: проверяет неиспользуемые объявления пространства имен и подсказки местоположения в XML
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", должна использовать ресурс @string 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>
1 ответ
Namespace declaration is not used
это не ошибка Это просто предупреждение. Вы можете удалить эту строку, если хотите, но можете просто оставить ее в покое. Что касается использования ресурса @string, рекомендуется определить строковые значения внутри файла strings.xml и ссылаться на них в своем проекте. Файл strings.xml находится в вашей папке res>values. Например: в вашем файле strings.xml уже должно быть несколько строковых ресурсов. Добавьте следующую строку в файл
<string name="openThird">open Third Activity</string>
Теперь, внутри вашего файла макета, сделайте это
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/openThird"
android:onClick="showJosh"
android:id="@+id/button2"
Сделайте то же самое с другими кнопками. Определите строковые значения внутри вашего strings.xml, а затем используйте их в макете.