如何从一个fragment
返回到之前的ActionBarActivity
单击Navigartion Bar
后退按钮?如何从一个片段返回到上一个ActionBarActivity
是否有任何方法可以重写?片段中不能使用onBackPressed()
方法。
如何从一个fragment
返回到之前的ActionBarActivity
单击Navigartion Bar
后退按钮?如何从一个片段返回到上一个ActionBarActivity
是否有任何方法可以重写?片段中不能使用onBackPressed()
方法。
您可以通过覆盖做到这一点OnBackPressed()
public void onBackPressed()
{
FragmentManager fm = getActivity().getSupportFragmentManager();
fm.popBackStack();
}
片段是添加在堆栈中,当你popbackStack()它去以前的片段堆栈
你不能重写片段中的onBackPressed事件。 –
它无法覆盖片段内的onBackPressed()所以我想要一些替代 –
刚刚从Activity
。它删除onBackPressed()
将起作用。
第二件事
您必须添加Fragment1
在堆栈中,如果你想回到Fragment1
当你更换ListFragent
FragmentManager fragmentManager = getFragmentManager();
fragmentTransaction fragmentTransaction =fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.container,
FragmentObj);
fragmentTransaction.addToBackStack(null).commit();
我没有使用onBackPressed()里面的活动类 –
@nawinkhatiwada请参阅编辑 –
我在哪里使用此代码?在片段类里面? –
尝试使用这样的:
getView().setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_UP && keyCode == KeyEvent.KEYCODE_BACK) {
// handle back button
//add the functionality here
}
return false;
}
});
实施它在你的onResume函数中。
它应该完美地工作。
您是否想从您的片段活动中返回另一个活动来保存当前片段? –
试试我的答案... –