所以,我正在开发Android。我想知道,这段代码有什么问题?在 res / layout 目录中的 activity_main.xml 上,在图形布局编辑器中,它给出了以下错误:
Couldn't resolve resource @string/edit_message
Couldn't resolve resource @string/button_send
的字符串:
<?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 :(得分: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 :(得分:1)
清理项目并检查出来。您的代码或xml中没有问题..
project->clean
答案 2 :(得分:0)
您的XML文档中有两个根元素。您的String资源应该放在与布局文档分开的文件中,通常该文件名为“strings.xml。”,它将出现在项目的“values”目录中。
此外,您已为EditText元素指定了名为“edit_message”的id。这可能会与名为“edit_message”的字符串冲突。
答案 3 :(得分:0)
检查“fragment_main.xml”和“strings.xml”选项卡上是否有“*”,如“* strings.xml”。 这意味着您进行了更改但尚未保存,请单击(文件&gt;保存),就是这样。至少为我工作。
答案 4 :(得分:0)
确保字符串引用名称在活动xml中正确间隔,Android清单文件将它们解析并正确呈现为单独的tokens.eg @string/buttonX
或@+id/string/buttonX
错误而不是将它们分隔为“ @ string / buttonX“或”@ + id / buttonX“