我在執行反向導航時遇到問題。我該如何修復背部導航碎片?
活動A1
開始活動A2
。 A2
包含一個完整的屏幕片段:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<!-- fragment goes here -->
</RelativeLayout>
在A2
的onCreate()
我在上述容器裝載片段F1:
@Override
protected void onCreate(Bundle arg0) {
super.onCreate(arg0);
setContentView(R.layout.activity_main);
replaceFragment(new AccountHomeFragment());
}
public void replaceFragment(Fragment f){
FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, f);
fragmentTransaction.addToBackStack(f.getClass().getSimpleName());
fragmentTransaction.commit();
}
並且在某個點上的按鈕的用戶點擊和F1
是換成F2
。 問題是,當用戶單擊後退按鈕:
- 第1點擊:什麼也沒發生
- 第二點擊:從
F2
去A1
(F1
跳過)
我期待什麼
- 1st click:
F2
- >F1
- 第2點擊:
F1
- >A1
我注意到,如果我按回到前F1被F2代替:
- 第1點擊:
F1
- >黑屏 - 第2點擊:空白屏幕 - >
A1
關於你的期望,你的意思是F2-> F1然後F1-> A1,對吧? – dmon 2013-02-26 14:55:32
@dmon:絕對。我糾正了這個問題。 – znat 2013-02-26 15:30:12
你如何添加F2?你使用replaceFragment方法嗎? – 2013-02-26 15:50:22