startActivityForResult()接收不到回传值,优雅的处理方法及替换建议。

为什么通过startActivityForResult()方式去启动launchMode=singleTaskActivityonActivityResult()会被立即回调且resultCode值为RESULT_CANCEL??   


真的是这个样子吗?

startActivityForResult()接收不到回传值,优雅的处理方法及替换建议。_第1张图片

startActivityForResult()接收不到回传值,优雅的处理方法及替换建议。_第2张图片


可以发现在5.0之后,就不出现这种情况。

launchModesingleTask 只会出现在5.0之前,在5.0以后所有的launchMode都可以接受返回值。


建议:在android中,activity之间传递参数建议使用EventBus第三方框架来替代工作。这样可以很优雅?


EventBus官方源码地址: https://github.com/greenrobot/EventBus


EventBus官方使用文档:http://greenrobot.org/eventbus/documentation/


EventBus使用心得技巧:http://blog.csdn.net/u010566681/article/details/52119931

你可能感兴趣的:(Android积累)