Как использовать getViewLifecycleOwner () в BottomSheetDialogFragment - PullRequest
0 голосов
/ 19 апреля 2019

Мой пользовательский фрагмент расширяет BottomSheetDialogFragment. У меня есть ViewModel, и я наблюдаю некоторые объекты LiveData. Я хочу использовать getViewLifecycleOwner() в моих наблюдателях. Но он вылетает с этим журналом:

java.lang.IllegalStateException: Can't access the Fragment View's LifecycleOwner when getView() is null i.e., before onCreateView() or after onDestroyView()

BottomSheetDialog использует onCreateDialog() и, следовательно, onViewCreated() не вызывается. Помещение моих наблюдателей в onActivityCreated() также не решает эту проблему.

1 Ответ

0 голосов
/ 19 апреля 2019

Если поместить код внутри onActivityCreated() не работает, попробуйте использовать getViewLifecycleOwnerLiveData() и обратите внимание на LifecycleOwner.


Не совсем то, что вы просили, но если выпросто хочу фрагмент LifeCycle, я полагаю, вы можете получить его примерно так:

 @NonNull
 @Override
 public Lifecycle getLifecycle() {
     return super.getLifecycle();
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...