2017-03-01 29 views
1

基本上,當手機上按下返回按鈕,我想阻止一個特定的活動回到其在android之前的一個。我怎樣才能禁用回去在一些活動,而不是在片段

具體來說,我有登錄和註冊屏幕,當成功登錄/註冊時,都會啓動一個名爲HomeScreen的新活動。一旦HomeScreen啓動後,我想阻止用戶能夠返回登錄或按下BACK鍵註冊屏幕也我希望他們能夠在HomeScreen中的片段之間導航,例如他們可以導航到分享,交流等片段。

我想在backKey中使用finish()方法,但會退出應用程序,我也不想這樣做。

+1

只是完成一個啓動的主屏幕活動活動,所以它首先成爲堆棧 –

回答

1

你可以試試:

public void onBackPressed() { 
     if (getSupportFragmentManager().getBackStackEntryCount() > 1) { 
      getSupportFragmentManager().popBackStack(); 
     } else { 
      finish(); 
     } 
    } 

希望這有助於。

1

呼叫完成(),您啓動主屏幕意圖:

Intent intent = new Intent(this, HomeScreen.class); 
startActivity(intent); 
finish(); 
+1

我的代碼是這樣的: @Override 公共無效onBackPressed(){ 詮釋計數= getFragmentManager()getBackStackEntryCount() - 1; if(count == 0){ super.onBackPressed(); } else { getFragmentManager()。popBackStack(); } } 這工作正常,但是當我成功地從登入或註冊活動,navigte登錄到主屏幕,然後按返回鍵,它返回我登入或註冊活動,我只是想阻止。 –