RxKotlin压缩在flatmap

时间:2018-04-04 06:19:28

标签: android reactivex rx-kotlin

这是我的代码模板

getLastMessageSingle()
.flatmap(
    message->
    if(message.image==null)
        Single.Just(message)
    else
        Single.zip(t1,t2,BiFunction<String,String,String>{
            s1,s2->
          //body sets data to message

          message
        })
)
//subscribe part

我发现Single.Just会执行,但zip部分永远不会被执行。我做错了什么或平面功能不支持拉链。

任何帮助将不胜感激。

解决方案:

这是我的错误,第二个单曲t2没有产生回应。

2 个答案:

答案 0 :(得分:0)

我有类似的问题,我不明白其中的原因。 奇怪的是,当你使用zip时,只调用返回值的最后一行!!!之前的所有行都不会执行。

所以我创建一个模型并用响应填充它并在最后一行返回它并在我的订阅中完成所有逻辑部分。

答案 1 :(得分:0)

你的两个函数必须给zip一些响应才能产生响应。