发布网友 发布时间:2022-06-07 09:27
共2个回答
热心网友 时间:2023-10-17 05:27
1.创建工程
2.联网的类
3。布局写listview,然后通过findviewbyid在代码中找到布局的控件
4.写一个解析类
1.在浏览器当中打开网址
2.把网址的json数据格式化,分析
3.从外到内依次分析创建类
4.在最外层的类当中写一个静态方法,返回最外层类的对象。
5.在方法当中:Gson gson = new Gson();
外部类名 对象名 = gson.fromJson(str,外部类名.class);
return 对象名;
5.写适配器
1.继承BaseAdapter的类,重写4个方法·
2.写构造方法,给Context、集合赋值
3.重点写在getView方法
1.创建ViewHolder类,把列表当中的布局的控件都定义在viewholder当中。
2.在getView当中声明viewholder
3.判断convertview是否为空
如果convertview==null、就对于convertview进行赋值
赋值完。初始化viewholder,对于viewholder当中的控件
进行findviewbyid的步骤
把viewholder绑定在convertview上
convertview.settag(vh);
如果convertview不为空,就直接获取绑定的viewholder
vh = convertview.getTag();
4.对于viewholder当中的控件进行赋值
5.返回convertview
6.初始化listview的数据源,设置适配器
7.写一个方法,开启子线程,在子线程当中获取网络数据,然后通过handler把网络数据传入到主线程。
8.从写handler的handleMessage方法,然后获取子线程传来的网络数据,然后解析数据。
得到数据当中的集合,把得到的集合通过addAll的方法添加到数据源当中。
数据源发生了改变,所以要通知适配器,通过adapter.notifyDataSetChanged
9.上拉加载
1.设置listview的*setOnScrollListener
2.重写两个方法
onScrollStateChange;如果到底了并且手势处于停止状态,就显示底部进度条,并且页数加1,然后在此加载数据。
onScroll :判断是否到底了
10.设置跳转二级界面
设置*setOnItemClickListener();
重写方法,跳转界面
Intent intent = new Intent();
intent.putExtra(“key”,内容);
startActivity(,);
热心网友 时间:2023-10-17 05:27
JSONArray ccroot = jp.getJSONArray("城市代码"); for (int i = 0; i < ccroot.length(); i++) { JSONObject o = (JSONObject) ccroot.get(i); JSONArray county = o.getJSONArray("市"); for (int j = 0; j < county.length(); j++) { weather...