如何往适配器里添加数据

//数组型型Json串解析
  private void requestNetData() {
        //请求网络数据
        MyTask myTask=new MyTask(new MyTask.Icallbacks() {
            @Override
            public void updateUiByjson(String jsonstr) {
                List<Result> list=new ArrayList<>();
                //得到集合类型
                Type t=new TypeToken<List<Result>>(){}.getType();
                Gson gson=new Gson();
                list=gson.fromJson(jsonstr,t);
                //取得显示的数据
                Result data1 = list.get(0);
                if(operType==1){
                    data.clear();
                }
                data.addAll(data1.getData());
                //创建适配器
                setAdapter();
                plv.onRefreshComplete();
            }
        });
        myTask.execute(url);
    }


//对象型Json串解析
private void requestNetData() {
//调用工具类
    MyTask myTask = new MyTask(new MyTask.Icallbacks() {
        @Override
        public void updateUiByjson(String jsonstr) {
//使用Gson解析
            Gson gson=new Gson();
//解析   接口要传的值:jsonstr     bean包 Result.class
            Result result = gson.fromJson(jsonstr, Result.class);
                  //解析出要获取的数据。
            List<Result.DataBean> data = result.getData();
//标记  如果标记==1则清空集合。重新加载
               if (operType==1){
                   add.clear();;
               }
//给一个大集合把解析出过的数据都放进去,然后把这个大集合给适配器进行加载。加载的是这个大集合的数据
    private  List<Result.DataBean> add=new ArrayList<>();
               add.addAll(data);
调用下方的适配器设置方法
            setAdapter();
//自动关闭刷新或者加载的提示
            plv.onRefreshComplete();
        }
    });
    myTask.execute(url);
//适配器优化
 
 
private void setAdapter() {
        //如果适配器==空才重新new一个适配器进行加载
    if (adapter==null){
        adapter = new Myadapter(MainActivity.this,add);
        plv.setAdapter(adapter);
    }else {
//不等于空的话刷新适配器
        adapter.notifyDataSetChanged();
    }
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值