Программно вернуться к предыдущему фрагменту в стеке

Скажем, у меня есть активность, в которую программно добавлены фрагменты:

private void animateToFragment(Fragment newFragment, String tag) {
    FragmentTransaction ft = getFragmentManager().beginTransaction();
    ft.replace(R.id.fragment_container, newFragment, tag);
    ft.addToBackStack(null);
    ft.commit();
}

Как лучше всего вернуться к предыдущему видимому фрагменту?

Я нашел ] Запуск функции кнопки «Назад» при нажатии кнопки в Android, но я думаю, что имитация события клавиши «Назад» — неправильный способ сделать это (и я тоже не могу заставить его работать):

dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_BACK));

Вызов finish()просто закрывает деятельность, которая меня не интересует.

Есть ли лучший способ сделать это?

203
задан Community 23 May 2017 в 02:02
поделиться