如何通过跳过DialogFragment

问题描述:

转到通过后退按钮之前的活动当我点击后退按钮它去到以前的行动,而不是一次活动如何通过跳过DialogFragment

是什么想做的事就是这样:1.Activity下一步 - > 2.Activity2 next-> 3.DialogFragment(从DialogFragment中选择用户)next-> Activity2(with selected user)backPressed-> Activity。

什么我在是: 1.Activity下一步 - > 2.Activity2下一步 - > 3.DialogFragment(选择DialogFragment用户)下一步 - >活性2(与选择的用户)backPressed-> 5.DialogFragment backPressed - >活动

方案是: 当我打开此活性与从dialogFragment从onClick事件选择用户如示于下面的图片:

enter image description here

用户选择屏幕之后是:

enter image description here

当我点击右上角的后退按钮再次打开相同的片段,而不是打开前面的活动.. 我已经试过很多方法也没有找到解决办法。 请帮助。

enter image description here] 3

我的代码:

//

Back button in toolbar 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 
     toolbar.setTitleTextColor(getResources().getColor(R.color.o2htextOne)); 
     getSupportActionBar().setDisplayShowTitleEnabled(false); 
     final Drawable upArrow = getResources().getDrawable(R.drawable.back_arrow); 
     upArrow.setColorFilter(getResources().getColor(R.color.o2htextOne), PorterDuff.Mode.SRC_ATOP); 
     getSupportActionBar().setHomeAsUpIndicator(upArrow); 
     { 
      getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
      Intent intent=new Intent(); 



     } 
@Override 
    public boolean onOptionsItemSelected(MenuItem item) { 
     if(item.getItemId()==android.R.id.home) 
     { 

      finish(); 

     } 
     return true; 

    } 
+0

的地方,你放弃你的dialogFragment使用此移动用户的详细活动时? –

+0

[Android'Back'按钮动作]的可能重复(https://stackoverflow.com/questions/11342592/android-back-button-action) – GuilhermeFGL

+0

我认为你应该只调用'finish()'而不是启动'onOptionsItemSelected'中的新活动以及@ sam_0829表示“解除”。 –

onBackPressed只是检查这种情况下,你想什么都做的动作:

@Override 
public void onBackPressed() { 
    if (dialogObj != null && dialogObj.show()) { 
     dialogObj.dismiss(); 
    } else { 
     //this.finish(); 
     super.onBackPressed(); 
    } 
} 

getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
upArrow.setNavigationOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View view) { 
      ActivityCompat.finishAfterTransition(AgentCreateIntimation.this); 
     } 
}); 

尝试在

{ 
    getSupportActionBar().setDisplayHomeAsUpEnabled(true); 
    Intent intent = new Intent(); 
} 
+0

我已经尝试过,但没有任何区别。 – Axay