[英]How to handle onActivityResult?
I am blocking in onActivity result. 我阻止了onActivity结果。
Activity A startActivityForResult()
to Activity B, Some business reason i am removing activity B and moving to till Activity F. From Activity F have to send setResult()
to Activity A same time i have to clear stacks while moving to Activity A. 活动A从startActivityForResult()
到活动B, startActivityForResult()
某些业务原因,我要删除活动B并移至活动F。从活动F必须将setResult()
发送到活动A,同时我必须在移至活动A时清除堆栈。
How to handle this scenario? 如何处理这种情况?
We can use a flag from Intent
class (didn't try myself) - Intent.FLAG_ACTIVITY_FORWARD_RESULT
我们可以使用Intent
类中的标志(自己尝试一下) Intent.FLAG_ACTIVITY_FORWARD_RESULT
Right before calling finish()
in each of your middle actvities, you must be making a call to startActivity(intent)
. 在每个中间活动中调用finish()
之前,您必须正在调用startActivity(intent)
。 Pass this flag to this intent
: 将此标志传递给此intent
:
showC.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT);
In your last activity, do the regular setResult()
ceremony. 在上一个活动中,执行常规的setResult()
仪式。 And then try to get result in your first activity as usual. 然后像往常一样尝试在第一次活动中获得结果。
using intent start ActivityF and pass result to ActivityA using intent.putExtra 使用意图启动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.