繁体   English   中英

startActivityForResult 2如何从1个父Activity激活并在只有1个孩子被分裂时获得onActivityResult

[英]How startActivityForResult 2 Activity from 1 parent Activity and get onActivityResult when only 1 child is finisched

我有3个活动:

  • 答:家长活动
  • B:第一个孩子活动
  • C:第二次儿童活动

在A活动中,单击按钮时,打开B活动。

Intent i = new Intent(this,  ActivityB.class);
startActivityForResult(i, 1); 

在一个活动中有一个可运行的对象,在某些情况下会打开C活动

Intent i = new Intent(this,  Activityc.class);
startActivityForResult(i, 2); 

所有工作和在设备上我都看到C活动超过B活动而不是A活动,但是当我用this.finish();关闭C活动时this.finish(); 在Activity中,不会触发onActivityResult()事件。 仅当我也关闭B活动时,它才会被解雇。

关闭C活动并让B活动打开时,我如何知道A活动?

每当您希望退出所有打开的活动时,都应按下一个按钮,该按钮将加载在应用程序启动时运行的第一个活动,然后清除所有其他活动,然后完成最后剩余的活动。 为此,请在您的项目中应用以下代码

Intent intent = new Intent(getApplicationContext(), FirstActivity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("EXIT", true);
startActivity(intent);

上面的代码完成了除FirstActivity之外的所有活动。 然后我们需要完成FirstActivity的Enter在Firstactivity的oncreate中输入以下代码

if (getIntent().getBooleanExtra("EXIT", false)) {
    finish();
}

请看这个

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM