我在使用数据绑定API时遇到一个奇怪的错误:
未指定资源类型(在“text”处,值为“@={bindingvariable.propertyname}”)。
这是我的XML:

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools">
    <data>
        <variable
            name="address"
            type="com.example.Address"/>
    </data>

    <android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <EditText
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="@string/edit_hint_street"
            android:text="@={address.street}"
            tools:text="Evergreen terrace 742"/>
    </android.support.design.widget.TextInputLayout>
</layout>

这是我的pojo课程:
public class Address {
    private String street;

    public void setStreet(String street) {
        this.street = street;
    }

    public String getStreet() {
        return street;
    }
}

最佳答案

在检查了两次我的build.gradle之后,我发现了一个错误:我忘记了像这样启用数据绑定api:

dataBinding {
    enabled = true
}

那必须在你的android dsl中。

关于android - 未指定资源类型(在“文本”中,值为“@ = {bindingVariable.propertyName}”),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36966384/

10-10 08:49