我不能返回」找到它以片段B.呼叫後返回片段A如下片段A調用B片段 - B做了popbackstack - 在它的一個
片段A調用片段測試:
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
FragmentTransaction ft = getFragmentManager().beginTransaction();
Test test = new Test();
ft.replace(R.id.container, test);
ft.addToBackStack("test");
ft.commit();
}
});
在測試我點擊一個按鈕,返回:
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
Button btn = (Button) getActivity().findViewById(R.id.back);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
getActivity().getFragmentManager().popBackStackImmediate();
}
});
}
從那裏,我認爲這是回片段A在onAttach,但的onResume我看不出它是在返回片段一個?
@Override
public void onResume() {
super.onResume();
}
@Override
public void onAttach(Context context) {
super.onAttach(context);
}
我在調試器模式下在onResume中有一個斷點。它不會回到onResume。 – narb
使用popBackStack(「測試」)而不是popBackStackImmediate() –
popbackstack(「test」,0)不能更好地工作。我改爲addToBackStack(null)和一個沒有標籤的popbackstack。我添加了一個分離和一個暫停。我看到碎片測試都經歷了兩次,但沒有在A片中重新激活的跡象。 – narb