Как взаимодействовать с другим фрагментом при использовании компонента архитектуры навигации?

Я хочу добавить фрагмент B поверх фрагмента A без разрушения фрагмента A. Единственный вариант, который я вижу в библиотеке навигации, - это использовать метод навигации, чтобы открыть фрагмент, но как убедиться, что фрагмент B добавлен поверх фрагмента A, а не заменен.

navigationController.navigate(R.id.B, bundle);

и как найти экземпляр фрагмента А, чтобы иметь возможность взаимодействовать с ним?

1 ответ

Хотелось бы узнать, чтобы уточнить себя. Почему вы не хотите, чтобы фрагмент A был уничтожен при переходе к фрагменту B?

Угадайте, если вы не хотите потерять состояние фрагмента A, вы можете инициализировать его в viewModel и извлечь его в onCreate вашей деятельности (какой бы метод жизненного цикла вашего фрагмента вы ни выбрали, подходящий звук). Если это не было причиной, пожалуйста, объясните, чтобы предоставить нам лучший контекст.

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