Двухстороннее связывание Android с типом Integer приводит к тому, что привязка данных не существует

У меня возникли проблемы с реализацией двухстороннего связывания с типом данных Integer.

public class User {

    private String firstName;
    private String lastName;
    private int age;

    public User() {}

    public void setFirstName(String firstName) {
       this.firstName = firstName;
    }

    public String getFirstName() {
       return this.firstName;
    }

    public void setLastName(String lastName) {
       this.lastName = lastName;
    }

    public String getLastName() {
       return this.lastName;
    }

    public void setAge(int age) {
       this.age = age;
    }

    public int getAge() {
       return this.age;
    }

}

XML:

<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">

    <data class="UserDataBinding">
        <variable
            name="user"
            type="com.databinding.model.User" />
    </data>

    <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:padding="@dimen/activity_horizontal_margin">

       <EditText android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@={user.firstName}" />

       <EditText android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@={user.lastName}" />

       <EditText android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@={user.age}" />

    </LinearLayout>
</layout>

К сожалению, это дает мне ошибку

«Ошибка: (52, 17) Не удается найти метод получения атрибута« android: text »со значением типа java.lang.Integer для android.support.design.widget.TextInputEditText.»

Если я изменю текст атрибута на

       <EditText android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@={Integer.toString(user.age)}" />

тогда я получаю ошибку

«Ошибка: не может сгенерировать связыватели вида java.lang.NullPointerException»

Ценю любую помощь по этому вопросу.

ОБНОВЛЕНИЕ: Кажется, была другая ошибка сразу после ошибки, упомянутой выше.

не может сгенерировать связыватели представления java.lang.NullPointerException

Не уверен, почему он дает мне NPE, хотя приложение еще не запущено.

Ответы на вопрос(7)

Ваш ответ на вопрос