Android中,http请求数据进行数据更新功能

HttpUtil.sendOKHttpRequest(url, new Callback() {
    @Override
    public void onFailure(Call call, IOException e) {
        Log.d(TAG, "请求泥头接口失败!" );
    }
    @Override
    public void onResponse(Call call, Response response) throws IOException {
        //将数据存放到下拉菜单中
        String res = response.body().string();
        Log.d(TAG,"请求泥头返回信息:"+res);
        /* Gson gson = new Gson();*/
        List<KeyValueModel> siteList = new ArrayList<KeyValueModel>();
        if (!TextUtils.isEmpty(res)){//不为空时直接赋值
            try {
                JSONArray allSites = new JSONArray(res);
                for (int i=0;i<allSites.length();i++){
                    JSONObject object = allSites.getJSONObject(i);
                    /*第一种实现方式
                    KeyValueModel site = new Gson().fromJson(object.toString(),KeyValueModel.class);*/
                    /*第二种实现方式  存在构造方法,并且不要属性的setter方法




 */
                    KeyValueModel site = new KeyValueModel(object.getString("id"),object.getString("name"));
                    
/*第三种方法,去掉构造方法,使用set方法*/

                    siteList.add(site);
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }
        }

        final ArrayAdapter<KeyValueModel>  adapterSiteStart = new ArrayAdapter<KeyValueModel>(getActivity() , android.R.layout.simple_spinner_item , siteList);
        getActivity().runOnUiThread(new Runnable() {//在fragment中修改页面的数据要添加的部分
            @Override
            public void run() {
                startSiteSpinner.setAdapter(adapterSiteStart);
            }
        });

    }
});
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章