tgoop.com/android_live/617
Last Update:
onActivityCreated() во Fragment — deprecated
#fragment
Наверное, это уже не новость, но кто знает, может вы, как и я, пропустили её.
Стоило мне обновить версии библиотек в основном проекте, как я увидел, что метод onActivityCreated()
стал deprecated.
Что это вообще за метод, и почему он стал теперь deprecated?
Этот метод существует по той причине, что фрагменты не могут существовать как независимый компонент. Для их работы и отображения необходим или контейнер в Activity
, или родительский Fragment
. Для того, чтобы сообщить, что Activity
был создан и был создан этот метод.
Но технологии развиваются и приходит переосмысление некоторым вещам. Не кажется ли вам странным, что один класс имеет метод в своём жизненнном цикле о том, что был создан его родительский класс? Вот и разработчики Google посчитали это странным и решили сделать Fragment
менее зависимым от родительского компонента и убрать этот метод.
Сейчас есть две рекомендации:
1️⃣ Все операции, связанные со View
во Fragment
нужно делать в onViewCreated()
.
2️⃣ Если вам нужно получить информацию о том, что Activity
была создана, то можно зарегистрировать LifeCycleObserver
в методе onAttach()
и удалён после вызова метода onCreate()
. Как по мне, звучит как костыль.
В целом, интересно, как будет вести себя Fragment
дальше, если его делают менее зависимым от других частей приложения. 🤔
BY Android Live 🤖

Share with your friend now:
tgoop.com/android_live/617