繁体   English   中英

如何处理onActivityResult?

[英]How to handle onActivityResult?

我阻止了onActivity结果。

活动A从startActivityForResult()到活动B, startActivityForResult()某些业务原因,我要删除活动B并移至活动F。从活动F必须将setResult()发送到活动A,同时我必须在移至活动A时清除堆栈。

如何处理这种情况?

我们可以使用Intent类中的标志(自己尝试一下) Intent.FLAG_ACTIVITY_FORWARD_RESULT

在每个中间活动中调用finish()之前,您必须正在调用startActivity(intent) 将此标志传递给此intent

showC.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);

在上一个活动中,执行常规的setResult()仪式。 然后像往常一样尝试在第一次活动中获得结果。

使用意图启动ActivityF并使用intent.putExtra将结果传递给ActivityA

Intent intent = new Intent(ActivityF.this, ActivityA.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.putExtra("RESULT", "result to ActivityA");
startActivity(intent);

暂无
暂无

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

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