Не удается найти сеттер для атрибута 'android: text' - Android MVVM - PullRequest
0 голосов
/ 02 сентября 2018

Я постоянно получаю эту ошибку в архитектуре android MVVM. Я пытался удалить папки .idea, igradle, gradle, но это не сработало. Я даже пытался перезапустить студию с отключенным кешем, это также не сработало. Пожалуйста, помогите.

ниже приведен пример кода

public class TestViewModel extends AndroidViewModel {

    MutableLiveData<String> test = new MutableLiveData<>();

    public TestViewModel(@NonNull Application application) {
        super(application);
    }

    public MutableLiveData<String> getTest() {
        return test;
    }

    public void setTest(MutableLiveData<String> test) {
        this.test = test;
    }
}

и

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

    <data>

        <import type="in.raji.bills.billsreminder.viewmodels.TestViewModel"
            />

        <variable
            name="viewModel"
            type="in.raji.bills.billsreminder.viewmodels.TestViewModel"/>
    </data>

    <android.support.constraint.ConstraintLayout
        android:id="@+id/relativeLayout8"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        tools:context=".MonthlyFragment">

        <EditText
            android:id="@+id/autoCompleteTextView"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginStart="16dp"
            android:layout_marginTop="16dp"
            android:hint="Enter title"
            android:text="@{viewModel.test}"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"/>
    </android.support.constraint.ConstraintLayout>
</layout>

1 Ответ

0 голосов
/ 18 сентября 2018

Решение

LiveData можно использовать в качестве наблюдаемого поля из Android Studio 3.1. Это ошибка старой Android Studio, пожалуйста, обновите вашу Android Studio. Проверьте примечания к выпуску .

Предложение

  • Удалить <import type="in.raji.bills.billsreminder.viewmodels.TestViewModel"/>
  • Вы можете сделать MutableLiveData<String> test личным.
...