多个活动startActivityForResult使用 [英] startActivityForResult usage for multiple activities
本文介绍了多个活动startActivityForResult使用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我使用startActivityForResult像这样两项活动
i use startActivityForResult for two activities like this
Activity A -> startActivityForResult(ActivityB,0) -> Activity B -> setresult(10); finish(); -> Activity A -> if(result==10) {dofunction(); }
但我必须使用这个逻辑4个或更多的活动。
but i must use this logic for 4 or more activities.
Activity A -> startActivityForResult(ActivityB,0) -> Activity B -> finish(); -> Activity C -> finish(); -> Activity D -> setresult(10); finish(); -> Activity A -> if(result==10) {dofunction(); }
但是,这并不正常工作。
but this does not work.
推荐答案
解决方案:
Activity A -> startActivityForResult(activityB,0);
Activity B -> activityCintent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); startActivity(activityCintent); finish();
Activity C -> activityDintent.setFlags(Intent.FLAG_ACTIVITY_FORWARD_RESULT); startActivity(activityDintent); finish();
Activity D -> setresult(10); finish();
Activity A -> if(result==10) {dofunction(); } YEPPP
这是FLAG_ACTIVITY_FORWARD_RESULT的逻辑。首先,你开始为结果的活动,新的活动,直到您将结果发送此意图另一个新的活动。
我希望这将是有同样的问题peaople很有帮助。
this is the logic of FLAG_ACTIVITY_FORWARD_RESULT. First you start an activity for result, new activity sends this intent to another new activity until you set result. I hope this will be helpful for peaople having same problem.
这篇关于多个活动startActivityForResult使用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文