[Android] [XML]错误:(19,31)找不到与给定名称匹配的资源。(layout_above)

时间:2016-02-07 13:35:17

标签: android xml

这是我的xml文件,我不知道为什么

android:layout_above="@id/PairNow"

会导致我的构建失败。

请帮助解决此问题,谢谢!

XML ::

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"
tools:context="com.example.mybt.MainActivity">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Paired Device!"
    android:layout_alignParentTop="true"
    android:id="@+id/PairTitle"/>
<ListView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/list_devices"
    android:layout_below="@id/PairTitle"
    android:layout_above="@id/PairNow"
    android:layout_alignParentEnd="true" ></ListView>
<Button
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:layout_alignParentBottom="true"
    android:id="@+id/PairNow"
    android:text="Pair Now"
    android:textSize="30dp"/>

错误讯息:

Error:(19, 31) No resource found that matches the given name (at 'layout_above' with value '@id/PairNow').

3 个答案:

答案 0 :(得分:2)

Button之前宣布您的ListView,或在+中提供参考时使用ListView

android:layout_above="@+id/PairNow"

<强>更新

你可能会提出一个问题,那就是你的代码有什么问题,它的确是正确的,但是XML文档是按顺序分开的。因此,当您在Button中引用ListView时,当时不会创建Button。请查看this reference了解更多信息。

答案 1 :(得分:2)

当您提供当前小部件下方的布局参考时,您应该使用@ + id / anyidTitle,因此请将代码更改为以下

错误

@id/PairNow

Corrent

@+id/PairNow

答案 2 :(得分:0)

只需更改

@id/PairNow

@+id/PairNow

因为在具有id PairNow的Button之前,id PairNow不存在。您总是可以使用@ + id /而不是@id /。