Лучше использовать viewGroup или макет / FrameLayout вместо фрагментов (перемещение фрагментов на нажатия кнопок в Activity). Поскольку фрагменты имеют свой собственный жизненный цикл и фрагмент, удерживают их или не убивают, когда вы выполняете переход фрагмента в рамках действия.
Хотя, если вы все еще хотите пойти с фрагментом, сначала загрузите фрагмент первого нажатия кнопки и обрабатывать события щелчка других двух кнопок, удаляя ранее прикрепленный фрагмент (Фрагмент прикреплен к первому нажатию кнопки).
Это можно сделать:
getSupportFragmentManager().beginTransaction().remove(YOUR_FIRST_FRAGMENT).commit();
, после чего вы может написать код для добавления фрагмента в этом месте, getFragmentManager().beginTransaction().replace(YOUR_FIRST_FRAGMENT, new YourSecondButtonFragment()).commit();
и, следовательно, это можно сделать для третьего нажатия кнопки, просто нужно изменить фрагмент, прикрепленный ко второй кнопке.
Надеюсь, это поможет вы.
Если у вас есть большое количество двоичных данных, безусловно, лучше всего сохранить это в Cloud Storage, затем сохраните ссылку на этот объект в своей базе данных (база данных реального времени или Firestore).