2013-11-18 1 views
0

Итак, я разрабатываю Android. Я хотел бы знать, что не так с этим кодом? На activity_main.xml в Рез/макет каталога, в редакторе графического макета, он дает мне эту ошибку:Android «строка ошибка» при разработке для Android API 19?

Couldn't resolve resource @string/edit_message 
Couldn't resolve resource @string/button_send 

Strings:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="app_name">My First App</string> 
    <string name="edit_message">Enter a message</string> 
    <string name="button_send">Send</string> 
    <string name="action_settings">Settings</string> 
    <string name="title_activity_main">MainActivity</string> 
</resources> 

Планировка:

<LinearLayout 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" 
    android:orientation="horizontal"> 
    <EditText android:id="@+id/edit_message" 
     android:layout_weight="1" 
     android:layout_width="0dp" 
     android:layout_height="wrap_content" 
     android:hint="@string/edit_message" /> 
    <Button 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/button_send" /> 
</LinearLayout> 
+0

В' strings.xml' должна быть строка, определенная 'edit_message' и' button_send'. – Geros

+0

Это определено выше, и только в strings.xml –

+0

Пожалуйста, очистите свой проект и используете ли вы папку по умолчанию Layout и папку значений по умолчанию для ввода значения? –

ответ

1

Очистите свой проект и проверьте его. нет никаких проблем в коде или XML ..

project->clean 
1

вырезать этот код в вашем mainactivity.xml:

<resources> 
<string name="app_name">My First App</string> 
<string name="edit_message">Enter a message</string> 
<string name="button_send">Send</string> 
<string name="action_settings">Settings</string> 
<string name="title_activity_main">MainActivity</string> 
</resources> 

и поставить его на res/values/strings.xml

+1

Это написано только в strings.xml. Он просто не упомянул об этом –

0

У вас есть два корневых элемента в документе XML. Ваши ресурсы String должны находиться в файле, отдельно от вашего документа макета, обычно файл называется «strings.xml.», Который будет отображаться в директории «values» вашего проекта.

Кроме того, вы предоставили элементу EditText идентификатор с именем «edit_message». Это может столкнуться с вашей строкой с именем «edit_message».

+0

Это не столкновение. Он будет показывать только предупреждение и то, что написано выше, то есть только в strings.xml –

0

Проверьте, если «fragment_main.xml» и на вкладке «strings.xml» есть «*» на нем, как это «* strings.xml» , Это означает, что вы внесли изменения и еще не сохранили их, нажмите (Файл> Сохранить) и все. По крайней мере, работал на меня.

0

Убедитесь, что имя, которое вы струнные референции правильно разнесены в деятельности XML и Android файлы манифеста них, чтобы быть разобраны и визуализироваться в виде отдельного tokens.eg @string/buttonX или @+id/string/buttonX неверны вместо пространства, чтобы они «@ строка/buttonX» или " @ + id/buttonX "