Ответ
viewLifecycleOwner в Fragment охватывает жизненный цикл, связанный с View фрагмента. Он доступен только после onCreateView() и уничтожается перед onDestroyView(). Основные методы:
onCreate()(View не создана)onStart()(View создана, но не видима)onResume()(View видима)onPause()(View теряет фокус)onStop()(View невидима)onDestroy()(View уничтожена)
Пример использования:
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
viewLifecycleOwner.lifecycle.addObserver(object : DefaultLifecycleObserver {
override fun onResume(owner: LifecycleOwner) {
// View видима
}
})
}
Важно: не используйте viewLifecycleOwner в onAttach() или onCreate() - там View ещё не создана.