Компонент навигации и просмотр модели связи

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

getParentFragment().getParentFragment().getParentFragment()

мне это кажется неправильным, но я проверил это, и, кажется, работает нормально, например, регистрация хэш-кодов дает мне

D/EnvTabFrag: this fragment 62204288
D/EnvTabFrag: parent fragment 264756153

D/EnvTempFrag: this fragment 169781400
D/EnvTempFrag: parent fragment 66865393
D/EnvTempFrag: parents parent fragment 62204288
D/EnvTempFrag: parents parents parent fragment 264756153

Может ли кто-нибудь сказать мне, есть ли что-то ужасное, что я делаю здесь, что, может быть, я не вижу или не понимаю, единственная потенциальная проблема, которую я вижу, это нулевые указатели, это нормальный подход или я что-то упускаю? большое спасибо

пример фрагмента

locationPickerViewModel = ViewModelProviders.of(getParentFragment().getParentFragment().getParentFragment())
      .get(LocationPickerViewModel.class);

0 ответов

Другие вопросы по тегам