android resultCode和requestCode的区别和使用场景分析

resultCode和requestCode是开发中经常用到的数据传递,那么他们有什么区别呢?我们以A,B,C等代码页面

区别:

resultCode:假设A->B,我们不用在调用页面A传递,只有在B页面结束时传递即可,这样子在B页面调用setResult()结束后,使用者A页面都可以收到。

requestCode:假设A->B,我们在调用页面A页面是需要传递,页面B结束时不用再调用,是给使用者A的。

使用场景:

公共页面:如果这个页面B会有很多页面调用,则不适合使用resultCode,因为这个页面一量确定就是固定的,假设有A,C,D等很多页面调用,这要子如果要修改这个resultCode,则会影响很多的页面。

调用复杂的页面:如果页面B,有A->B->C->D,或者A->B-C->B,假设中间页面C也有一个不同于B页面的resultCode,则会造成混乱,这时候用requestCode,反而更合适。

所以目前推荐使用requestCode比较合适,当然这个以后还得逐步总结,目前就到这里吧。

 

你可能感兴趣的:(Android)