您的位置:首页 > 编程语言 > Java开发

EventBus当前页面传递事件,Rxjava和Retrofit连用

2017-12-24 18:04 387 查看
EventBus传递

//注册EventBus
EventBus.getDefault().register(this);

//销毁EventBus
@Override
public void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);

}

//接收事件

@Subscribe(threadMode = ThreadMode.MainThread)
public void EventBus2(List<News.StoriesBean> data2 ){
myAdapter = new MyAdapter(data2,Main2Activity.this);
listView.setAdapter(myAdapter);
}

//rectorfit的接口


@GET("api/4/news/latest")
Call<News> getList();


//Rxjava


//用RXJAVA完成异步
new Observable<String>() {
@Override
protected void subscribeActual(Observer<? super String> observer) {

//括号内使用rectorfit


new Retrofit.Builder()
.baseUrl("https://news-at.zhihu.com/")
.addConverterFactory(GsonConverterFactory.create())
.build()
.create(MyInterface.class)
.getList()
.enqueue(new Callback<News>() {
@Override
public void onResponse(Call<News> call, Response<News> response) {
News body = response.body();
data = body.getStories();
EventBus.getDefault().post(data);
}

@Override
public void onFailure(Call<News> call, Throwable t) {

}
});
}
}.subscribe();



}



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: