关于startActivityForResult

1.startActivityForResult的使用场景是什么。requestcode和resultcode的作用是什么。
startActivityForResult是在从一个activity打开另一个activity之后,需要在打开的activity销毁时带回数据时进行使用的。

requestcode用于表示你请求的id,resultcode是在setResult时用于返回请求的id,可以通过requestcode和resultcode来确定是哪个activity返回的数据

2.A启动B,B在何时调用setResult,setResult可以位于finish之后吗。
setResult可以在任何时候调用,但是不能位于finish之后。
setResult的源码这是finish的源码
通过源码可以看见setResult方法只是一个赋值而已,真正传递数据的在finish方法里面。所以如果setResult放在finsh之后,那么将没有办法将数据传递给上一个Activity。

猜你喜欢

转载自blog.csdn.net/weixin_43104619/article/details/84662872