R类未生成(API错误?) - Android项目

时间:2012-06-14 14:29:56

标签: java android android-layout

自从刚读完Head First Java书以来,我第一次尝试Android编程。我正在浏览Notepad Tutorial当我导入项目的文件时,我的R类没有生成。我认为这是因为我在我的一个xml文件中遇到的错误。我正在使用API​​ 7

错误如下:  错误:不允许使用字符串类型(在'layout_height'中,值为'match_parent')。 note_edit.xml / Notepadv2 / res / layout line 3 Android AAPT问题

这是我的xml代码:

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

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

    <LinearLayout android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:text="@string/title" />
        <EditText android:id="@+id/title" 
          android:layout_width="wrap_content"
            android:layout_height="wrap_content" 
            android:layout_weight="1"/>
    </LinearLayout>

    <TextView android:layout_width="wrap_content"
        android:layout_height="wrap_content" 
        android:text="@string/body" />
    <EditText android:id="@+id/body" android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_weight="1"
        android:scrollbars="vertical" />

    <Button android:id="@+id/confirm" 
      android:text="@string/confirm"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>

4 个答案:

答案 0 :(得分:2)

您使用的是哪个版本? 2.1不支持match_parent而且,如果您的项目的res文件夹包含任何错误,则您的R.java文件将无法生成,直到您清除xml中的错误文件。

因此,只需将高度更改为fill_parent而不是match_parent,或者只将项目目标更改为2.2

之后,完成了这些事情。只需清理您的项目并运行。希望这会对你有所帮助。

答案 1 :(得分:0)

尝试使用fill_parent代替match_parent

答案 2 :(得分:0)

从API级别8开始,它支持match_parent低于8,它不支持.So,将match_parent替换为fill_parent

答案 3 :(得分:0)

他们在match_parent中添加的fill_parent代替{{1}}代码中的某些地方,您使用的是api 7不“理解”的内容,因此它只将其视为字符串,fill_parent / match_parent就是这个

的一个很好的例子