0
我在橫向模式下有2個片段,而縱向上有1個片段。我正在通過xml方法加載所述片段。無論如何,我正在檢查第一個活動中第二個片段的存在,並啓動第二個片段的活動或直接在第二個片段上調用一個方法。一切正常,但是,當用戶最初旋轉(創建兩個片段)然後旋轉回來時,我對第二個片段的檢查現在不爲空,並且在添加到後臺堆棧時打破邏輯。Android +阻止帶片段xml的addToBackStack?
如何解決這個問題?我是否需要從onPause()中的歷史堆棧中刪除片段?或者可能阻止第二個片斷以某種方式被添加到後臺堆棧中。
FirstActivity:
public void onClick(View view) {
SecondFragment secondFragment = (SecondFragment) getSupportFragmentManager().findFragmentById(R.id.second_fragment);
if (secondFragment != null) { // * this will no longer be not null after rotating
// two pane layout : update second fragment
secondFragment.updateSecondFragmentView();
} else {
// one pane layout : start second activity
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
startActivity(intent);
}
}
SecondFragment:你建議嗎?
@Override
public void onPause() {
super.onPause();
FragmentManager fragmentManager = getActivity().getSupportFragmentManager();
fragmentManager.popBackStack(null, FragmentManager.POP_BACK_STACK_INCLUSIVE);
}