Size: a a a

Moxy – MVP библиотека под Android

2020 September 04

СК

Сергей Климов... in Moxy – MVP библиотека под Android
Всем привет!

Может я что-то упустил, но не нашёл возможности использовать во View интерфейс презентера, а не конкретную его реализацию

Это вообще поддерживается?
источник

P

Pavel in Moxy – MVP библиотека под Android
Через DI можно интерфейс использовать
источник

СК

Сергей Климов... in Moxy – MVP библиотека под Android
Pavel
Через DI можно интерфейс использовать
А можно какой-то пример?
источник

СК

Сергей Климов... in Moxy – MVP библиотека под Android
Лучше через dagger 2 пример)
источник

AD

Aleksey D. in Moxy – MVP библиотека под Android
Сергей Климов
Всем привет!

Может я что-то упустил, но не нашёл возможности использовать во View интерфейс презентера, а не конкретную его реализацию

Это вообще поддерживается?
можно через абстрактный класс пробовать, потому что для @InjectPresenter нужен MvpPresenter
источник

ДГ

Дамир Гаязов... in Moxy – MVP библиотека под Android
Добрый день! Не совсем понимаю, каким образом вьюшка после пересоздания подхватывает нужный презентер?

Например:
Открыты два одинаковых фрагмента, но на каждом из них были вызваны разные методы вью и соответственно стэк восстановления для каждого из них должен быть разным после пересоздания
источник

AK

Aleksei Korshun in Moxy – MVP библиотека под Android
по тэгу получает нужный
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
Дамир Гаязов
Добрый день! Не совсем понимаю, каким образом вьюшка после пересоздания подхватывает нужный презентер?

Например:
Открыты два одинаковых фрагмента, но на каждом из них были вызваны разные методы вью и соответственно стэк восстановления для каждого из них должен быть разным после пересоздания
вам интересно как это внутри реализовано?
источник

P

Pavel in Moxy – MVP библиотека под Android
Сергей Климов
А можно какой-то пример?
Порылся и не нашел. Вроде как действительно не получится, т.к. для provide presenter нужен MvpPresenter.
Кажется, что не так уж оно и нужно. Презентер привязан к конкретной View. Так что врядли есть смысл его закрывать интерфейсом.
Можете описать ситуацию, зачем понадобилось закрывать презентер интерфейсом?
источник

ДГ

Дамир Гаязов... in Moxy – MVP библиотека под Android
Алексей Ершов
вам интересно как это внутри реализовано?
Да
источник

ДГ

Дамир Гаязов... in Moxy – MVP библиотека под Android
Aleksei Korshun
по тэгу получает нужный
То есть если два фрагмента созданы с одинаковым тэгом, то у них будет общий презентер?
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
посмотрите в MvpProcessor.getMvpPresenter
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
Дамир Гаязов
То есть если два фрагмента созданы с одинаковым тэгом, то у них будет общий презентер?
нет, тег действует только в рамках одного фрагмента. Пошарить презентер между фрагментами можно только самостоятельно его где-то закэшировав
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
у каждого MvpDelegate и у каждого презентера есть тег. У соседних фрагментов будут разные MvpDelegate-теги, поэтому презентеры будут разные
источник

ДГ

Дамир Гаязов... in Moxy – MVP библиотека под Android
Алексей Ершов
у каждого MvpDelegate и у каждого презентера есть тег. У соседних фрагментов будут разные MvpDelegate-теги, поэтому презентеры будут разные
А как вьюшка после пересоздания понимает, какой именно у нее мвп делегат? Новый инстанс же создается
источник

АЕ

Алексей Ершов... in Moxy – MVP библиотека под Android
MvpDelegate-тэг хранится в savedINstanceState фрагмента. Глянтье MvpDelegate.onCreate
источник

ДГ

Дамир Гаязов... in Moxy – MVP библиотека под Android
Ок, спасибо!
источник

СК

Сергей Климов... in Moxy – MVP библиотека под Android
Pavel
Порылся и не нашел. Вроде как действительно не получится, т.к. для provide presenter нужен MvpPresenter.
Кажется, что не так уж оно и нужно. Презентер привязан к конкретной View. Так что врядли есть смысл его закрывать интерфейсом.
Можете описать ситуацию, зачем понадобилось закрывать презентер интерфейсом?
Ну это к вопросу о Clean Architecture
То что нужно оперировать контрактами, а не конкретной реализацией
источник
2020 September 05

AA

Andrew Agafonov in Moxy – MVP библиотека под Android
Хм, что думаете? У меня есть данные подгруженные через retrofit в момент вызова метода onFirstViewAttach главного presenter, как эти данные распределить между всеми presenter?) которые тоже ждут похожее данные с апи, им же не над тоже делать тот же запрос к апи😅
источник

P

Pavel in Moxy – MVP библиотека под Android
Кеш :)
источник