1· 主fragment或者主activity里面定义一个数组与titles
public String[] arr = {"One", "Two", "Three"};
private ArrayList<String> titles;
2·for循环遍历添加到复用fragment
for (int i = 0; i < arr.length; i++) {
titles.add(arr[i]);
list.add(new GankListFragment(arr[i]));
}
解析数据的话就在Api Server里面加入注解@path来设置占位符
@GET("data/{tech}/{num}/{page}")
Observable<GankBean> getGankData(@Path("tech") String tech, @Path("num") int num, @Path("page") int page);
解析时添加几个字段
String tech,int ios,int web
public void getGank(final BaseCallBack<GankBean,String>callBack,String tech,int ios,int web){
HttpUtil.getHttpUtil().getServer(GankService.sBaseUrl,GankService.class)
.getGankData(tech,ios,web).compose(RxUtil.<GankBean>rxObservableTransformer())
.subscribe(new Observer<GankBean>() {
@Override
public void onSubscribe(Disposable d) {
}
@Override
public void onNext(GankBean gankBean) {
callBack.onSuccess(gankBean);
}
@Override
public void onError(Throwable e) {
callBack.onFail("网络错误:"+e.getMessage());
}
@Override
public void onComplete() {
}
});
Fragemnt里面实现方法是
public GankListFragment(String tech) {
this.tech=tech;
}
//添加数据
@Override
protected void initData() {
if (presenter!=null){
presenter.getGank(tech,num,page);
}
}
网友评论