Реализация области с привязкой данных в Android - PullRequest
0 голосов
/ 04 июня 2018

Я пытаюсь использовать компонент архитектуры Android, то есть data binding с базой данных Realm, используя шаблон MVVM.

После изучения привязки данных и MVVM я наткнулся на несколько подходов к привязке модели с помощью пользовательского интерфейса..

  1. Объявить наблюдаемые примитивные поля в модели и напрямую связать их с XML-файлом Android.

  2. Сохранить модель как примитивную с даннымивведите и объявите наблюдаемые поля в классе модели View

Теперь, так как область не поддерживает поля Observable, оставлена ​​опция использования Observable

я ссылался на эту статьюиспользовать область с привязкой данных , но эта статья довольно старая.

, поэтому мои вопросы

  1. Что предпочтительнее при реализации привязки данныхв Android, связать модель непосредственно с пользовательским интерфейсом Android или объявить заметные переменные в модели представления и сопоставить их с моделью?

  2. рекомендации по использованию области с привязкой данных

Мой вопрос довольно специфичен в контексте области и привязки данных, поэтому он не является обобщающим вопросом,

1 Ответ

0 голосов
/ 08 июня 2018

Я отвечу на первый вопрос только потому, что некоторое время не использовал Realm.

Как вы заявили сами, вы не можете использовать поля Observable в модели, которую вы используете в Realm, и вы не должны 'никогда не делай так.Модель должна быть простой.ViewModel именно там, где принадлежат Observables.Они должны быть привязаны к представлению и только к ним.

Рассмотрите возможность использования новых классов LiveData вместо Observables и ViewModel из новых компонентов архитектуры.Они упрощают работу и теперь поддерживаются в Привязке данных:

Обзор LiveData

LiveData с привязкой данных

...