2016-09-20 86 views
1

怎麼可能回到最後一個Activity已經從Fragment?假設我們已經Activity A和Fragment答:我從推出一個Activity一個Fragment,現在我要回去Fragment A.當我按在我的手機上的後退按鈕會關閉應用程序。如何返回片段中的最後一個活動?

我使用FragmentManager啓動片段:

Fragment fragment = new Kontakt(); 
      getFragmentManager().beginTransaction() 
        .add(R.id.kontaktfrag, fragment) 
        .commit(); 

是解決方案; popBackStackImmediate()addToBackStack()

+0

http://stackoverflow.com/a/18634392/3498931 - 這將幫助,如果您曾經嘗試過自己的選擇,你會知道越好.. –

回答

0

嘗試添加

getFragmentManager() 
.beginTransaction() 
.addToBackStack("") 
.commit(); 

或只加.addToBackStack( 「」).commit前();

這裏是你的情況的代碼,

Fragment fragment = new Kontakt(); 
     getFragmentManager().beginTransaction() 
       .add(R.id.kontaktfrag, fragment) 
       .addToBackStack("") 
       .commit(); 
+0

代替'add'的? –

+0

沒有添加片段後 – ss007

+0

檢查我的編輯答案 – ss007

0

首先嚐試addToBackStack添加您的片段時。 那麼你需要重寫你的活動onBackPressed功能,例如:

@Override 
public void onBackPressed() { 
    if (getSupportFragmentManager().getBackStackEntryCount() > 0) { 
     getSupportFragmentManager().popBackStackImmediate(); 
    } else { 
     super.onBackPressed(); 
    } 
} 

我想我和它的工作。