5

在此文件中是我的布局,此代码中显示以下错误

error: Error: No resource found that matches the given name (at 'id' with value '@id/question_text_view').
error: Error: No resource found that matches the given name (at 'id' with value '@id/next_button').

这是布局文件

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:id="@id/question_text_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="24dp"
        />
    <LinearLayout 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal" >
        <Button 
            android:id="@+id/true_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/true_button"
        />
        <Button 
            android:id="@+id/false_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/false_button"
        />
    </LinearLayout>
        <Button 
        android:id="@id/next_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/next_button"
        />
</LinearLayout>

这是我的 strings.xml

<?xml version="1.0" encoding="utf-8"?>
    <resources>

        <string name="app_name">GeoQuiz</string>
        <string name="true_button">True</string>
        <string name="false_button">False</string>
        <string name="correct_toast">Correct</string>
        <string name="next_button">Next</string>
        <string name="incorrect_toast">Incorrect</string>
    <string name="action_settings">Settings</string>
    <string name="question_founder">Frank Reed Horton Founded APO on december 25 1947</string>
    <string name="question_chief">Willy Wonka was known as a cheif</string>
    <string name="question_lady">The first lady that became president in APO was Mary Katz</string>
    <string name="question_president">Our current President of the Delta Rho chapter is  john dolan</string>
<string name="question_alphabets">Alpha, Beta, Gamma, Delta, Epsilon, Eta, Zeta</string>
</resources>

我知道字符串上有 know question_text_view 但我确实在我的活动中创建了一个数组,该数组包含所有问题 mQuestionTextView =(TextView)findViewById(R.id.question_text_view); int question = mQuestionBank[mCurrentIndex].getQuestion(); mQuestionTextView.setText(问题); mQuestionBank 是我提出的所有问题的数组 getQuestion() 是我获取问题的 getter 方法

和 next_button 的第二个错误我不知道我做错了什么,因为我将它包含在 strings.xml 中,任何人都可以帮助我

4

3 回答 3

8

android:id="@id/question_text_view" 应该是 android:id="@+id/question_text_view" 对于按钮 android:id="@id/next_button" 应该是 android:id="@+id/next_button"

文本视图

    <TextView
    android:id="@+id/question_text_view" //  missing + in your xml code
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:padding="24dp"
    />

按钮

    <Button 
    android:id="@+id/next_button"  // missing + in your xml code
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/next_button"
    /> 

ID

任何 View 对象都可能有一个与之关联的整数 ID,以唯一标识树中的 View。编译应用程序时,此 ID 以整数形式引用,但 ID 通常在布局 XML 文件中以字符串的形式在 id 属性中分配。这是所有 View 对象(由 View 类定义)共有的 XML 属性,您将经常使用它。XML 标记内的 ID 语法为:

字符串开头的符号 (@) 表示 XML 解析器应该解析和扩展 ID 字符串的其余部分,并将其标识为 ID 资源。加号 (+) 表示这是一个新的资源名称,必须创建并添加到我们的资源中(在 R.java 文件中)

在您的情况下,您考虑的按钮 id 为 android:id="@id/next_button"。您正在引用 Android 资源 ID(假设)。这不存在。textview 也一样。因此,您会收到 Resource not found 错误。

有关更多信息,请查看以下链接

http://developer.android.com/guide/topics/ui/declaring-layout.html

于 2013-05-19T20:11:43.667 回答
0

您应该小心视图的 ID。在您的 TextView 和您的 Button 视图中,您忘记了 ID 属性中的“+”。据我所知,您尝试使用 ID 引用另一个视图。如果您使用“+”,则为该视图创建一个新 ID。

固定版本:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/question_text_view"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:padding="24dp"
        />
    <LinearLayout 
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="horizontal" >
        <Button 
            android:id="@+id/true_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/true_button"
        />
        <Button 
            android:id="@+id/false_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/false_button"
        />
    </LinearLayout>
        <Button 
        android:id="@+id/next_button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/next_button"
        />
</LinearLayout>
于 2013-05-19T20:07:32.793 回答
0

可能文件夹路径太长,例如我的 "E:\Project\Mobile\SixworldGit\sixworld\projects\sixworld\SW_Vietnam\2.3.2.0.20160711_Android_MoboSDKAll_lucgioi_20160711_1805\2.3.2.0.20160711_Android_MoboSDKAll\MoboSDK\reference\MoboSDKAll\res\drawable"

于 2016-07-12T02:34:52.070 回答