Size: a a a

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

2018 November 25

YS

Yura Shinkarev in Moxy – MVP библиотека под Android
источник

B

Boris in Moxy – MVP библиотека под Android
Спасибо! Да, похоже ключевой момент, что базовый презентер должен быть абстрактным
источник

YS

Yura Shinkarev in Moxy – MVP библиотека под Android
Мне кажется все таки что нет. Ты просто регламентируешть, что базовый нельзя использовать в качестве "реального"
источник

O

OzOn in Moxy – MVP библиотека под Android
подскажите как мне сделать PreferenceFragment используя MVP
источник

O

OzOn in Moxy – MVP библиотека под Android
???
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
Telegram
Алексей Федоров in Moxy – MVP библиотека под Android
Всем добрый день. Мне нужна подсказка по Moxy и Cicerone. Код https://gist.github.com/LAHomieJob/ce767d1fa0b4d6b49a7d88a81ba37363

У меня есть контейнер-активити для двух фрагментов с экрана авторизации. Метод для открытия фрагментов в контейнере прописан в презентере внутри onFirstViewAttach https://gist.github.com/LAHomieJob/ce767d1fa0b4d6b49a7d88a81ba37363#file-authorizationactivitypresenter-kt-L18

Я тестирую приложение на эмуляторе с API 21. При первом открытии приложения метод onFirstViewAttach вызывается и нужный фрагмент открывается. После нажатия кнопки "Назад" активити-контейнер уничтожается. Однако, если из панели недавно закрытых приложений я заново открываю приложение, то все что я вижу - это пустой экран, так как он onFirstViewAttach не сработал.

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

Приложение заново работает нормально, если я удаляю…
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
Посмотрите мое сообщение, пожалуйста. Может у кого какие мысли будут
источник

IG

Ilya Gulya in Moxy – MVP библиотека под Android
Алексей Федоров
Всем добрый день. Мне нужна подсказка по Moxy и Cicerone. Код https://gist.github.com/LAHomieJob/ce767d1fa0b4d6b49a7d88a81ba37363

У меня есть контейнер-активити для двух фрагментов с экрана авторизации. Метод для открытия фрагментов в контейнере прописан в презентере внутри onFirstViewAttach https://gist.github.com/LAHomieJob/ce767d1fa0b4d6b49a7d88a81ba37363#file-authorizationactivitypresenter-kt-L18

Я тестирую приложение на эмуляторе с API 21. При первом открытии приложения метод onFirstViewAttach вызывается и нужный фрагмент открывается. После нажатия кнопки "Назад" активити-контейнер уничтожается. Однако, если из панели недавно закрытых приложений я заново открываю приложение, то все что я вижу - это пустой экран, так как он onFirstViewAttach не сработал.

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

Приложение заново работает нормально, если я удаляю приложение из недавно закрытых и снова его открываю
Выглядит так, что ты не зануляешь компонент откуда ты достаёшь презентер. В итоге у тебя один и тот же презентер. А у него второй раз и не вызовется onFirstViewAttach
источник

IG

Ilya Gulya in Moxy – MVP библиотека под Android
Не зануляешь именно в Component Manager, откуда ты его и достаёшь
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
Ilya Gulya
Выглядит так, что ты не зануляешь компонент откуда ты достаёшь презентер. В итоге у тебя один и тот же презентер. А у него второй раз и не вызовется onFirstViewAttach
Этот момент понимаю - onFirstViewAttach вызывается когда презентер первый раз аттачится к вьюхе.
И в действительности, когда я возвращаюсь в приложение onFirstViewAttch не вызывается
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
Правда я не могу понять почему. ВЕдь AuthorizationActivity - это первая активти и при нажатии кнопки назад, вызывается метод finish(). Меня это смущает - что зафинишенная активти остается в памяти
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
override fun onCreate(savedInstanceState: Bundle?) {
       component = DI.componentManager().activityAuthorizationComponent
       component?.inject(this)
       setTheme(R.style.AppTheme_AuthorizationContainer)
       super.onCreate(savedInstanceState)
   }

   override fun onDestroy() {
       super.onDestroy()
       component = null
   }

Вот таким образом я инициализирую компонент и уничтожаю его в активти
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
Ilya Gulya
Выглядит так, что ты не зануляешь компонент откуда ты достаёшь презентер. В итоге у тебя один и тот же презентер. А у него второй раз и не вызовется onFirstViewAttach
Вот так выглядит componentManager https://gist.github.com/LAHomieJob/53590e58887a32d19a62b48d36487c83

Я взял его из гистов у Алесандра Блинова
источник

АФ

Алексей Федоров in Moxy – MVP библиотека под Android
Проблема решилась! В компонент менедже я выполнял ленивую инициализацию компонента из-за этого он не пересоздавался
источник
2018 November 26

SV

Sergey Vasilchenko in Moxy – MVP библиотека под Android
задавайте вопросы сразу)
источник

OS

Oleg Sinelnikov in Moxy – MVP библиотека под Android
подскажите как лучше реализовать загрузку данных в recycler view? сейчас делаю это в onFirstViewAttach методом getViewState.someMethod() (AddToEndSingleStrategy)
источник

OS

Oleg Sinelnikov in Moxy – MVP библиотека под Android
проблема в чтом, что при возвращении на этот фрагмент(isInRestoreState == true) на экране пустой recycler view(заполняется он в someMethod())
источник

OS

Oleg Sinelnikov in Moxy – MVP библиотека под Android
как мне сохранить состояние recycler?
источник

YS

Yuri Shmakov in Moxy – MVP библиотека под Android
а где ты видишь, что isInRestoreState == true ? в момент выполнения метода someMethod()? Т.е. мокси этот метод вызывает?
источник

OS

Oleg Sinelnikov in Moxy – MVP библиотека под Android
да
источник