文章詳情頁
android - RxJava 在onNext(User user) 可以把user賦值給外部成員變量mUser嗎?
瀏覽:72日期:2024-02-28 18:57:50
問題描述
我剛學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 內置的靜態文件
相關文章:
排行榜
