Подтвердить что ты не робот

Жизненный цикл фрагментов в отношении его активности

Ситуация Моя активность ждет от операции Async, и после того, как она вернется из асинхронной операции, ей необходимо передать информацию на 2 фрагмента внутри нее.

Требование 1. Оба фрагмента нуждаются в их вызовах onCreateView, которые необходимо выполнить, чтобы они загрузили свои макеты, 2. Им нужно, чтобы они были привязаны к своей деятельности, чтобы getActivity() работал.

Я написал метод setData() в обоих фрагментах и ​​искал "правильное" место в жизненном цикле активности, чтобы вызвать их.

onCreate() активности не работает, onStart() активности не работает и onStart() фрагмента не работает.

Ничего не работает, что мне здесь не хватает?

4b9b3361

Ответ 1

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

Ответ 2

Этот образ будет полезен для понимания обоих жизненных циклов вместе.

Как многие люди жалуются, и это несколько обоснованный аргумент, что этот жизненный цикл слишком сложен, в Google I/O 2018 они предложили использовать компонент архитектуры Framework. Пожалуйста, проверьте это Документы

enter image description here

Ответ 3

когда вы находитесь в Activity2---->backpress--->Fragment2(Activity1) --- означает Activity1 снова присоединяется к fragment2, поэтому on OnAactivityCreated() метод Activity1 полностью загружен.... так что мы можем вызвать метод setData() ваш Activity1...

Ответ 4

onAttachFragment() -activity вызывается до onCreate() -activity и после onAttach() -fragment

Ответ 5

Вызовите onDestroy на onStop вашего фрагмента. При запуске фрагмента следует вызвать CreateCreate. Дайте мне знать, если вы работаете как идеальное решение для своей проблемы.