我经常在xml文件中收到此错误。 这是xml文件中的代码
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:layout_centerHorizontal="true"
android:layout_above="@id/tRowMain" // in this line i get error resource not found that matches given name
android:textColor="@color/selectLevel"
android:id="@+id/tvOnOption"
android:text="Select Mode"
/>
<TableRow android:layout_width="fill_parent" android:id="@+id/tRowMain"
android:layout_height="wrap_content" android:gravity="center" android:layout_centerVertical="true" android:layout_centerHorizontal="true" >
//然后我检查了R.java文件,这个名字的id就在那里
public static final class id {
public static final int ibtn_retry=0x7f060006;
public static final int rLayoutMain=0x7f060000;
public static final int tRowMain=0x7f060002;
}
请帮我弄清楚这有什么不对......
感谢
答案 0 :(得分:10)
您应该首先使用@+id/tRowMain
语法,而不一定是您将其定义为元素ID的第一个位置。
变化:
android:layout_above="@id/tRowMain"
至android:layout_above="@+id/tRowMain"
和
android:id="@+id/tRowMain"
至android:id="@id/tRowMain
换句话说,在决定是否使用@+id
或@id
时,您为哪个属性分配ID并不重要。第一次在XML中提及您的ID时,请始终使用@+id
。
答案 1 :(得分:1)
android:layout_above="@+id/tRowMain"
如果它不起作用,请删除您的R.java文件。它将被重新生成