回答

2

關於銷燬FragmentF5明確Back Stack直到F2

嘗試這樣:

public方法在MainActivity

public void clearBackStackInclusive(String tag) { 
    getSupportFragmentManager().popBackStack(tag, FragmentManager.POP_BACK_STACK_INCLUSIVE); 
} 
現在

F5片段:

@Override 
public void onDestroy() { 
    super.onDestroy(); 
    ((MainActivity)getActivity()).clearBackStackInclusive("tag"); // tag (addToBackStack tag) should be the same which was used while transacting the F2 fragment 
} 

Reference

2

您可以使用標誌管理任務。例如,這將清除家中的所有活動。

Intent intent = new Intent(getApplicationContext(), Home.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
startActivity(intent) 

所以如果你開始4級或5個以上的任務在首頁的活動,你可以調用的第五名和回家。

我期待着它的一個片段版本,但它取決於你管理任務的方式。

編輯

我發現它的片段:

FragmentManager.popBackStack(String name,   FragmentManager.POP_BACK_STACK_INCLUSIVE) 

這會彈出所有狀態到一個已命名的。

0

那麼就可以實現這種行爲,用F1來管理每一個想法。 假設你正在做一個過程,每一步都取決於最後一個答案。所有你需要做的就是每回答你的回答,而不是讓F1開啓下一步。 例如:
1°在F1中,你說你要顯示一個人的電話號碼
2°F1呼叫F2是你搜索一個名字。當用戶選擇一個名字F2返回到F1中的名稱,並關閉
3°F1將被命名爲比F2返回並調用F3與該名稱F3顯示數字

不是真的看中了,但對我來說,當至少工作我不得不做類似的事情。