如何使用RxJava包装startActivityForResult?

时间:2017-12-20 21:09:22

标签: java android rx-java2 rx-android

如何从同一'反应链中的Activity开始并接收结果'?是否可以包裹startActivityForResultonActivityResult;如果是这样我将如何实现?

1 个答案:

答案 0 :(得分:1)

首先创建一个包装类,用于保存结果和请求代码以及intent。我们称之为结果

您可以在Activity类中创建PublishSubject字段。我们称之为主题。

然后你只需调用subject.onNext(new Result(requestCode,resultCode,data));在你的onActivityResult方法中。

最后,根据您的需要,使用flatMap或其他运算符将您的可观察方式链接到RX链。

抱歉我的手机格式不佳。