Как инвертировать поля в пользовательских моделях в Android MVVM - PullRequest
0 голосов
/ 05 апреля 2019

Как инвертировать поля в пользовательских моделях в Android MVVM

Есть ли способ InverseBinding поля в пользовательской модели и обновить ссылочный вид?

Ниже приведен мой пример.

data class User(
    val name: String,
    val phone: String
)
...
<EditText
    ...
    android:text="@={user.name}"/>

<EditText
    ...
    android:text="@={user.phone}"/>

<Button
    ...
    android:enabled="@{!user.name.isEmpty() &amp;&amp; !user.phone.isEmpty()}"
/>

Приведенный выше код корректно передает значение EditText в поле объекта User, но не обновляет представление, просто изменяя значение.

Проблема в том, что включенный атрибут кнопки не изменяется.

Я знаю, почему это невозможно, и я решил это с помощью слушателя, но дайте мне знать, если есть лучший способ, которого я не знаю

...