数据绑定布局奇怪的构建错误

时间:2018-06-19 10:09:46

标签: android android-layout

在我的项目中,我有Android数据绑定库v.2.3.3

添加新的aar库依赖项后,我在使用消息

编译项目时遇到错误
/Users/.../app/build/intermediates/data-binding-layout- 
out/.../debug/layout/..-activity.xml:90: error: Error: No resource found 
that matches the given name (at 'layout_above' with value 
'@id/buttonLayout').

我已经检查了构建/中间件中的xml,看起来很不错:

    ...
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/mainLayout"
    android:layout_above="@id/buttonLayout">

    ...

</RelativeLayout>
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="@dimen/_button_size"
    android:layout_alignParentBottom="true"
    android:id="@+id/buttonLayout">

    ...

</RelativeLayout>   
...

可能导致什么问题?它与数据绑定有关吗?
我试图使用aar库其他项目,它正在工作

1 个答案:

答案 0 :(得分:1)

在您的mainLayout中,您引用了尚未添加到资源的ID @id/buttonLayout,因为它在第二个RelativeLayout中进一步声明。要解决此问题,您需要先使用@+id添加它,如下所示:

...
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/mainLayout"
    android:layout_above="@+id/buttonLayout">

    ...

</RelativeLayout>
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="@dimen/_button_size"
    android:layout_alignParentBottom="true"
    android:id="@id/buttonLayout">

    ...

</RelativeLayout>   
...