Для использования фрагментов с их собственными презентаторами я пытаюсь использовать дуо-контрактные классы duo для управления событиями пользовательского интерфейса во фрагментах.
Например, рассмотрим событие щелчка, чтобы отобразить всплывающее сообщение в случае двух возможных результатов: 1. Сохранить и 2. Удалить
Затем я объявлю два метода контракта вида следующим образом:
interface View{
fun showSaveMessage()
fun showDeleteMessage()
}
И затем, во фрагменте, я буду использовать экземпляр моего докладчика. Класс для отображения сообщений в подходящее время, например: presenter.doSaveAction()
, докладчик, в свою очередь, заставит представление отобразить сообщение о тосте.
Кроме того, когда я приду к фактическим логикам c фрагмента, как и для извлечения некоторых данных с удаленного сервера, я использую класс Interactor вместе с классами Presenter-View для его выполнения.
Я считаю, что all остается верным Принципы практически зависят от того, какое приложение вы создаете. Иногда для архитектуры приложения более целесообразно использовать MVVM с MVP , чем только шаблон MVP.
Надеюсь, это ответит на ваш вопрос, вроде?