2014-12-19 24 views
1

我有一個片段(CustomerFrag)。我的目標是,當我從任何其他片段按下設備的後退按鈕時,它們都會重定向到這個片段。爲了做到這一點,我沒有覆蓋onBackPressed方法,但這並不符合我的需要。覆蓋onBackPressed返回到特定的片段?

我怎樣才能做到這一點?

到目前爲止,我已經試過這樣:

@Override 
public void onBackPressed() { 
    CustomerFrag cf = (CustomerFrag)getSupportFragmentManager().findFragmentByTag("Customer"); 
    if (cf != null){ 
     FragmentTransaction ft = getFragmentManager().beginTransaction();  
     Fragment frag = new CustomerFrag(); 
     ft.replace(R.id.fl, frag); 
     ft.addToBackStack("back"); 
     ft.commit(); 
    }else{ 
     super.onBackPressed(); 
    } 
} 
+3

請確保你在'if(cf!= null)''{}' – rekaszeru 2014-12-19 00:33:54

+0

之間檢查後有代碼塊我在這篇文章中加入了{}'不是因爲我沒有IDE創建 – FernandoPaiva 2014-12-19 00:57:19

回答

1

如果你可以使用額外的活動在新的活動顯示您的其他片段,當推壓回去 - 完成它。