说我有 A-> B-> C-> D 要么 A-> C-> D
D完成后,我想返回但跳过C,它将返回到A或B。
但是当用户使用后退按钮时,它将正常后退 D-> C-> B-> A 或D-> C-> A
我们如何在android中做到这一点?
答案 0 :(得分:2)
将此代码写在B活动中
public void gotoC()
{
Intent intent = new Intent(B.this, C.class);
startActivityForResult(intent, 10);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
switch (requestCode) {
case 10:
}
}
}
@Override
public void onBackPressed() {
super.onBackPressed();
}
当调用Intent去D活动时,C类中的ForwardActivityResult
public void gotoD()
{
Intent intent = new Intent(Activity.C, D.class);
intent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
startActivity(intent);
finish();
}
在D活动中转到B活动,调用RESULT_OK
public void gotoB()
{
Intent intent = new Intent();
setResult(RESULT_OK, intent);
finish();
}
答案 1 :(得分:1)
您可以使用
android:noHistory="true"
在清单中声明活动B的活动
答案 2 :(得分:-1)
我认为您可以在打开D finish()