Каковы различия между методами жизненного цикла onCreate() и onCreateView() в Fragment?

Я не знаю, когда использовать onCreate() или onCreateView().

Я использовал методы жизненного цикла onCreate() и onCreateView(). Я думаю onCreate() для Activity и onCreateView() для фрагмента. Но я не уверен. Могу ли я использовать метод onCreate() LifeCycle в Fragment? Надеюсь, кто-то может мне помочь!

Ответ 1

onCreate вызывается при первоначальном создании фрагмента. Здесь вы выполняете не графические инициализации. Он заканчивается еще до того, как макет завышен и фрагмент виден.

onCreateView вызывается для раздувания макета фрагмента. Является ли, например, графическая инициализация. Он всегда вызывается иногда после метода onCreate.

Ответ 3

Из документов:

onCreate

Вызывается, когда начинается действие.

В этом случае нужно выполнить большую инициализацию: вызов setContentView (int) для раздувания пользовательского интерфейса активности, используя findViewById (int), чтобы программно взаимодействовать с виджетами в пользовательском интерфейсе, вызывая manageQuery (android.net.Uri, String [], String, String [], String) для извлечения курсоров для отображения данных и т.д.

Вы можете вызвать finish() из этой функции, и в этом случае onDestroy() будет немедленно вызван без какого-либо остального жизненного цикла активности (onStart(), onResume(), onPause() и т.д.).

Производные классы должны переходить к реализации суперкласса этого метода. Если они этого не сделают, будет выбрано исключение.

Ссылка на документацию onCreate

onCreateView

Вызывается, чтобы фрагмент создавал экземпляр своего пользовательского интерфейса. Это необязательно, и неграфические фрагменты могут возвращать значение null (которое является реализацией по умолчанию). Это будет вызвано между onCreate (Bundle) и onActivityCreated (Bundle).

Если вы вернете представление отсюда, позже вы будете вызваны в onDestroyView(), когда релиз будет выпущен.

Ссылка на документацию onCreateView