如何從一個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函數中。
它應該完美地工作。
您是否想從您的片段活動中返回另一個活動來保存當前片段? –
試試我的答案... –