假设我有一个 Activity ,其中包含以编程方式添加的片段:
private void animateToFragment(Fragment newFragment, String tag) {
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.fragment_container, newFragment, tag);
ft.addToBackStack(null);
ft.commit();
}
返回到可见的先前片段的最佳方法是什么?
我找到了Trigger back-button functionality on button click in Android,但我认为模拟返回键事件并不是解决该问题的正确方法(而且我也无法使其正常工作):
dispatchKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_BACK));
调用
finish()
只会关闭我不感兴趣的 Activity 。有更好的方法来解决这个问题吗?
最佳答案
查看getFragmentManager().popBackStack()
方法(有多种选择)
http://developer.android.com/reference/android/app/FragmentManager.html#popBackStack()