В MVP кто должен заниматься навигацией? - PullRequest
5 голосов
/ 06 ноября 2010

Я убежден, что докладчик является ответственным за обработку навигационного аспекта приложения MVP. Это правда или есть исключения?

Ответы [ 2 ]

5 голосов
/ 22 ноября 2016

Я думаю, что вид является единственным ответственным за навигацию по экрану. Здесь у нас есть хорошее объяснение этой «проблемы Android-MVP», и у меня есть две причины думать таким образом:

1 - В основном для меня переходы экрана не больше, чемПоведение взглядов.он принадлежит виду состояние .Мы знаем, что докладчик должен управлять состоянием представления с помощью методов представления, но это представление, которое фактически реализует эти переходы (например, вызывая startActivity).

2 - навигация между экранами имеет некоторые зависимости Android SDK,такие как Intents, Bundles, FragmentsManager и т. д. ... И если вы хотите использовать MVP + Clean Architecture (настоятельно рекомендуется), вы не можете "делиться" андроид-зависимостями между вашими докладчиками, потому что они должны быть java только для создания модуля.тесты проще.

2 голосов
/ 07 ноября 2010

Вы правы.Модель не может этого сделать, а представление не может этого сделать.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...