java - 如何使用 RxJava 包装 startActivityForResult?

标签 java android rx-java2 rx-android

如何启动同一“ react 链”内的 Activity 并接收结果?是否可以包装startActivityForResultonActivityResult;如果是这样我该如何实现?

最佳答案

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

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

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

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

抱歉,格式不正确,我正在使用手机。

关于java - 如何使用 RxJava 包装 startActivityForResult?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47914381/

相关文章:

android - 使用 RxJava 的存储库网络感知

kotlin - 只有 Kotlin 协程的数据流?

android - 订阅 Android UI 线程

java - `elementToBeClickable` 只是检查它是否可见并启用

java - 如果字段名称不同,如何将 POJO 映射到 DTO

java - 我怎样才能在java中获取子进程的输出

Android模拟器代理设置

java - 交换两个变量的 int 值时,XOR 运算符评估什么?

java - 哈希码,等于 java 中的契约(Contract)

android - 使用 database.query(); 在 SQlite 和 Android 中插入或更新;