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); } }); } });
Android中,http請求數據進行數據更新功能
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.