文章详情页
android - RxJava 在onNext(User user) 可以把user赋值给外部成员变量mUser吗?
问题描述
我刚学RxJava, 执行完下面的代码 mUser还是null 原因会不会是异步造成的,纯属猜测,,请路过的大大帮忙看看,非常感谢OvO~另外,想请教下你们对于从网络取到的user一般怎么处理?/?问题解答
回答1:doOnNext会在onNext之前被调用,一般是一些准备工作,随意不太了解你在onNext和doOnNext为什么会写一样的代码.....另外你用的应该是retrofit吧,不知道Retrofit的Build有没有错,所以有可能是根本没有获取到User信息,RxJava本来就是专门处理异步流的库,所以不存在你说的“异步问题”
关于怎么处理要看你的业务需要而定,比如会根据User的地区,再发起请求来获得当地天气;或者过滤掉某些年龄小于18的User
回答2:异步编程,代码执行完相当于预定了一个任务,可能这个任务还没有开始执行。要等到异步任务执行完成后,才会执行回调,才能拿到真正的返回值
举个例子:要睡觉了,告诉媳妇,明早我要吃蛋饼,做好了叫我。等你说完这句话,蛋饼呢?蛋饼呢?显然得等到明天早上才有
回答3:把doOnNext操作符去掉再试试
标签:
java
上一条:android - realm 数据库配合 rxjava使用,按照教程配置,为什么找不到 MyRxFactory() 这个方法下一条:html - 内嵌app 的web 页面如何应用 app 内置的静态文件
相关文章:
1. angular.js - ionic 弹窗样式2. vue.js - weex scroller搭配refresh在android平台上拉会触发refresh3. javascript - h5上的手机号默认没有识别4. javascript - 在html中写了个<video>视频,浏览器却是一片空白为什么呢?360浏览器?5. javascript - 新建js文件时如何自动地加上"use strict"?6. 【加急】请问webarchive格式转换html怎么做7. css - div display: inline-block; 置中?8. css3 - Firefox 字号相对IE、Chrome更大,如何在CSS中统一?9. javascript - ajax中的 textStatus 报错为 parsererror?10. 如何解决docker宿主机无法访问容器中的服务?
排行榜