Разница и использование onCreate (), onCreateView () и onActivityCreated () в фрагментах

Каковы различия между onCreate() , onCreateView() и onActivityCreated() в фрагментах и ​​для чего они будут использоваться?

Solutions Collecting From Web of "Разница и использование onCreate (), onCreateView () и onActivityCreated () в фрагментах"

OnCreate ():

Метод onCreate() во Fragment вызывается после Activity onAttachFragment() но до этого в onCreateView() Fragment .
В этом методе вы можете назначать переменные, получать дополнения Intent и все, что не связано с иерархией View (т.е. неграфическими инициализациями). Это связано с тем, что этот метод можно вызвать, когда onCreate() не завершена, поэтому попытка доступа к иерархии View может привести к сбою.

onCreateView ():

После onCreate() (во Fragment ) onCreateView() Fragment . Вы можете назначить переменные View и выполнять любые графические инициализации . Ожидается, что вы вернете представление из этого метода, и это основной вид пользовательского интерфейса, но если ваш Fragment не использует макеты или графику, вы можете вернуть null (по умолчанию, если вы не переопределяете).

onActivityCreated ():

Как сказано в названии, это вызывается после завершения onCreate() Activity . Он вызывается после onCreateView() и в основном используется для окончательной инициализации (например, для изменения элементов пользовательского интерфейса).


Подводить итоги…
… все они называются в Fragment но вызываются в разное время.
onCreate() для выполнения любых неграфических инициализаций. Затем вы можете назначить и объявить любые переменные View вы хотите использовать в onCreateView() . После этого используйте onActivityCreated() для выполнения любых окончательных инициализаций, которые вы хотите сделать, как только все будет завершено.


Если вы хотите просмотреть официальную документацию на Android, ее можно найти здесь:
onCreate()
onCreateView()
onActivityCreated()

Есть также несколько немного отличающихся, но менее развитых вопросов / ответов здесь о переполнении стека:

  • onCreate() vs onCreateView()
  • onCreateView() vs onActivityCreated()

Для тех, кто ищет краткий, живописный ответ:

Введите описание изображения здесь https://hanaskuliah.wordpress.com/2015/12/07/android-5-development-part-6-fragment/


А также,

Введите описание изображения здесь