TGViewer
Android Developer Android Developer @android_dev_ru · 1.27K subscribers
Post #24 3.25K
Важен ли порядок, в котором добавляются операции в FragmentTransaction?

Документация описывает два случая, в которых порядок важен:

1. Метод commit() должен вызываться последним.

2. Если несколько фрагментов добавляются в один контейнер, то порядок добавления определяет порядок в котором фрагменты отрисовываются в иерархии view.

Есть еще третий случай. Если метод addToBackStack(String name) вызывается несколько раз на одной транзакции, то транзакция добавляется в бэкстэк один раз с тегом, который передается в последнем вызове метода.

Пример:

supportFragmentManager.beginTransaction()
.add(R.id.fragmentContainer, Fragment1())
.addToBackStack("add1")
.add(R.id.fragmentContainer, Fragment2())
.addToBackStack("add2")
.commit()

Создается одна транзакция с тегом add2, которая добавляет сразу два фрагмента. При нажатии кнопки Back оба фрагмента будут удалены.

Поведение нескольких addToBackStack() не задокументировано и может различаться на разных версиях ОС, так что не забудьте на собеседовании сказать, что вы бы так никогда делать не стали.
  • 👍 6
More from @android_dev_ru
  1. Oct 18, 2026Фоновая синхронизация запускается несколько раз Экран, вход в аккаунт и восстановление сет…
  2. Oct 17, 2026Клавиатура закрывает кнопку: где искать причину Форма помещается на экран, пока не открыла…
  3. Oct 16, 2026Практика · Android После возвращения пропал фильтр поиска Пользователь выбрал категорию, у…
  4. Jun 28, 2026🖥 Китайский разработчик выложил в открытый доступ целую автомобильную ОС, которая превращ…
  5. Jun 28, 2026✏️ Чек-лист: полный контроль качества Перед релизом или крупным обновлением пройдитесь по…
  6. Jun 27, 2026🎁 pod install --repo-update – надежный способ избежать "кэш-проблем" с CocoaPods Эта кома…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →