AsyncTask请求数据

AsyncTask类


public class MyAsyncTask extends AsyncTask<String,Integer,String> {
    @Override
    protected String doInBackground(String... strings) {
        return Http.HttpGet(strings[0]);
    }

    @Override
    protected void onPostExecute(String s) {
        super.onPostExecute(s);
        callBacks.getData(s);
    }
    public interface CallBacks{
        void getData(String srt);
    }
    private CallBacks callBacks;

    public void setCallBacks(CallBacks callBacks) {
        this.callBacks = callBacks;
    }
}

主线程

listv = view.findViewById(R.id.listview);
        MyAsyncTask task = new MyAsyncTask();
        task.setCallBacks(this);
        task.execute("http://api.expoon.com/AppNews/getNewsList/type/1/p/1");

接口

public void getData(String srt) {
        Gson gson = new Gson();
        jsonBean = gson.fromJson(srt, JsonBean.class);
        listv.setAdapter(new MyAdapter(getContext(),jsonBean.getData()));
    }

猜你喜欢

转载自blog.csdn.net/weixin_43898679/article/details/85617100
今日推荐