每次我们使用startActivityForResult方法时,如果需要接收返回的结果,总得在onActivityResult中进行处理。
学习了RxJava以后,体验到了操作符的便捷。因此尝试着解决上述问题。
只需这几行代码:
其中ActivityBackWrapper是onActivityResult方法参数的封装类。
原理很简单,看过后即可明白。精髓之处在于借助fragment来完成,因此完全跟随activity生命周期,不用担心内存泄漏问题。不啰嗦,直接上代码:
https://github.com/HowardChenhaoyang/RxActivity
或者在android studio里边:
compile 'com.howardreactive:rx:1.0.2'
一行代码搞定