MVP - ведущий модельного представления - PullRequest
2 голосов
/ 17 декабря 2009

У меня есть объект, который отвечает за управление экранной навигацией. Презентатор может вызвать один из двух методов этого объекта навигатора NavigateTo (строка screenName) и NavigateTo (строка screenName, данные объекта). Этот последний метод позволяет передавать некоторые данные контекста объекту навигатора.

Будет ли неправильным подход при вызове NavigateTo (строка screenName, данные объекта) передать вызывающего презентатора как данные навигатору, а затем разрешить объекту навигатора использовать его для извлечения данных из вида и / или модели .

Некоторые советы по этому вопросу будут с благодарностью.

1 Ответ

0 голосов
/ 18 декабря 2009

Передача Presenter в NavigateTo является хорошим выбором. Если у вас несколько докладчиков, вы можете написать интерфейс, который может использовать NavigateTo, и каждый докладчик должен реализовать этот интерфейс. Но если вы просто используете для этого одного докладчика или у него уже есть общий интерфейс, это не требуется.

Одна из идей MVP заключается в том, что вы меняете представление, не влияя на основную логику пользовательского интерфейса. Прохождение докладчика не влияет на эту цель MVP, так как вы можете изменить представление, которое использует докладчик. Теперь, если вы разрешаете прямой доступ к необработанному представлению через презентатор (посредством предоставления свойства представления), тогда это не очень хорошо. То, что вы хотите, это методы на докладчике, чтобы предоставить необходимую информацию NavigateTo. Таким образом, когда вы изменяете представление, вы реализуете код этих методов.

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