У меня есть одно действие, содержащее один контейнер, который получит 2 фрагмента. Как только инициализирует активности я начать первый фрагмент с:Андроид фрагмент простой backstack
showFragment(new FragmentA());
private void showFragment(Fragment fragment) {
getSupportFragmentManager().beginTransaction()
.replace(R.id.container, fragment, fragment.getTag())
.addToBackStack(fragment.getTag())
.commit();
}
Затем, когда пользователь нажимает на Fragmenta, я получаю этот щелчок на уровне активность и зову:
showFragment(new FragmentB());
Теперь, когда я нажимаю назад кнопка возвращается в фрагмент A (это правильно), и когда я нажимаю кнопку назад, он показывает пустой экран (но остается в той же активности). Я бы хотел, чтобы он просто закрыл приложение (так как у этого действия нет родителя).
Есть много сообщений, связанных с фрагментами и backstack, но я не могу найти простое решение для этого. Я хотел бы избежать случая, когда мне нужно проверить, не делает ли im back on Fragment A или Fragment B, так как я могу расширить количество фрагментов, и мне нужно будет поддерживать этот метод.
Моя проблема заключалась в том, что я не понимал, что добавляю пустой экран обратно в стек, не зная:/Затем проверяем, разрешает ли проблема FM.getBackStackEntryCount()> 1. Благодаря! – Bugdr0id
Фрагмент концепции очень сложно и просто! в любом случае рады помочь! –