我有以下情况:
MainActivity
课程使用InputActivity1
使用请求代码startActivityForResult
启动SOME_USER_INPUT
。InputActivity1
允许用户输入一些数据,然后使用InputActivity2
将此数据传递给Intent.putExtra
。InputActivity2
中,用户可以输入更多数据。setResult
中的finish
和InputActivity2
,用户输入的所有数据都应返回onActivityResult
MainActivity
方法,并带有之前指定的请求代码SOME_USER_INPUT
。也就是说,MainActivity
根本不会注意到结果来自InputActivity2
,尽管它只是调用InputActivity1
。
如何从第2步过渡到第3步?我已经尝试通过InputActivity2
使用请求代码和InputActivity1
来startActivityForResult
启动finish
,但是(诚然如预期的那样)MainActivity
没有收到任何内容。< / p>
答案 0 :(得分:1)
调用startActivity(InputActivity2)后,不要在InputActivity1中调用finish。仅在从InputActivity2获得结果时才执行此操作。这样,您就可以将InputActivit2的结果传递给MainActivitiy。
我想,你可以用One InputActivity和两个片段实现这个。试想一下。