获取服务器json数据并解析显示listview上 您所在的位置:网站首页 解析服务器端数据出现错误 获取服务器json数据并解析显示listview上

获取服务器json数据并解析显示listview上

2023-08-18 02:37| 来源: 网络整理| 查看: 265

通过服务器返回的json数据并解析显示到listview控件上:

运行图:

               

服务器返回json格式:

{ "activity": [ { "name": "天王盖地虎", "startTime": "2017-03-02 00:00" }, { "name": "宝塔镇河妖", "startTime": "2017-03-02 00:00" }, { "name": "锄禾日当午", "startTime": "2017-03-02 00:00" }, { "name": "汗滴禾下土", "startTime": "2017-03-02 00:00" }, { "name": "谁知盘中餐", "startTime": "2017-03-02 00:00" }, { "name": "粒粒皆辛苦", "startTime": "2017-03-02 00:00" }, { "name": "套路深钢磨成针", "startTime": "2017-03-02 00:00" }, { "name": "这个世界都是假的", "startTime": "2017-03-02 00:00" }, { "name": "套路深钢磨成针", "startTime": "2017-03-02 00:00" }, { "name": "套路深钢磨成针", "startTime": "2017-03-02 00:00" } ], "description": "查询成功", "flag": "success" }

1、activity_main布局中添加listview控件

添加好listview控件后,

创建listview的item布局起名为:listview_item

这里面就是2个文本用来显示json中的数据

2、MainActivity代码编辑

布局完成后来看一下activity中代码:

因为我使用okhttp网络请求开发所以需要下载okhttp架包导入libs里,下载地址:http://download.csdn.net/detail/qq_26650589/9811409

下载完成后解压文件,把2个架包导入libs中(2个架包都需要导入)

public JSONObject object; public ListView lv; public ArrayList list=new ArrayList(); @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); init(); } private void init() { list.clear(); lv=(ListView) findViewById(R.id.lv); new Thread(new Runnable() { @Override public void run() { OkHttpClient okHttpClient=new OkHttpClient(); //服务器返回的地址 Request request=new Request.Builder() .url("http://10.0.2.2/date.json").build(); try { Response response=okHttpClient.newCall(request).execute(); //获取到数据 String date=response.body().string(); //把数据传入解析josn数据方法 jsonJX(date); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }).start();; } private void jsonJX(String date) { //判断数据是空 if(date!=null){ try { //将字符串转换成jsonObject对象 JSONObject jsonObject = new JSONObject(date); //获取返回数据中flag的值 String resultCode = jsonObject.getString("flag"); //如果返回的值是success则正确 if (resultCode.equals("success")) { //获取到json数据中里的activity数组内容 JSONArray resultJsonArray = jsonObject.getJSONArray("activity"); //遍历 for(int i=0;i


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有