解析json的刷新数据

原创 2016年06月01日 12:18:28


package combwie.map;

import java.util.ArrayList;
import java.util.List;

import com.google.gson.Gson;
import com.handmark.pulltorefresh.library.PullToRefreshBase;
import com.handmark.pulltorefresh.library.PullToRefreshBase.Mode;
import com.handmark.pulltorefresh.library.PullToRefreshListView;
import combwie.map.adapter.MyAdapter1;
import combwie.map.bean.MyResult;
import combwie.map.bean.Rows;
import com.handmark.pulltorefresh.library.PullToRefreshBase.OnRefreshListener; 
import com.handmark.pulltorefresh.library.PullToRefreshBase.OnRefreshListener2; 

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.widget.ListView;

public class InfoActivity extends Activity{
 private PullToRefreshListView mPullToRefreshListView;
 private int p=1;
 private MyAdapter1 adapter1;
 private List<Rows> list=new ArrayList<Rows>();
 Handler handler=new Handler(){
  public void handleMessage(android.os.Message msg) {
   switch (msg.what) {
   case 1:
    List<Rows> list1=(List<Rows>) msg.obj;
    adapter1=new MyAdapter1(list, InfoActivity.this);
    mPullToRefreshListView.setAdapter(adapter1);
    break;
   case 2:
    List<Rows> list2=(List<Rows>) msg.obj;
    list.addAll(0, list2);
    adapter1.notifyDataSetChanged();
    mPullToRefreshListView.onRefreshComplete();
    break;
   case 3:
    List<Rows> list3=(List<Rows>) msg.obj;
    list.addAll( list3);
    adapter1.notifyDataSetChanged();
    mPullToRefreshListView.onRefreshComplete();
    break;
   }
  };
 };
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  // TODO Auto-generated method stub
  super.onCreate(savedInstanceState);
  setContentView(R.layout.infoactivity);
  //初始化数据
  initdata();
 }
 private void initdata() {
  // TODO Auto-generated method stub
  mPullToRefreshListView=(PullToRefreshListView) findViewById(R.id.pull_refresh_list);
  mPullToRefreshListView.setMode(Mode.BOTH);
  MyData(1, 0);
  mPullToRefreshListView.setOnRefreshListener(new OnRefreshListener2<ListView>() {

   @Override
   public void onPullDownToRefresh(PullToRefreshBase refreshView) {
    // TODO Auto-generated method stub
    MyData(2, 0);
   }

   @Override
   public void onPullUpToRefresh(PullToRefreshBase refreshView) {
    // TODO Auto-generated method stub
    MyData(3, p++);
   }
  });
  
 }
 public void MyData(final int what,final int id){
 new Thread(){
  public void run() {
   String data = NotworkUtil.getData(id);
   Gson gson=new Gson();
   MyResult myResult = gson.fromJson(data, MyResult.class);
   List<Rows> list=myResult.getResult().getRows();
   handler.sendMessage(handler.obtainMessage(what, list));
  };
 }.start();
 }

}


//notworkutil

package combwie.map;

import java.io.IOException;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
import org.apache.http.util.EntityUtils;

import com.baidu.location.b.e;

public class NotworkUtil {
 public static String url = "
http://api.fang.anjuke.com/m/android/1.3/shouye/recInfosV3/?city_id=14&lat=40.04652&lng=116.306033&api_key=androidkey&sig=9317e9634b5fbc16078ab07abb6661c5&macid=45cd2478331b184ff0e15f29aaa89e3e&app=a-ajk&_pid=11738&o=PE-TL10-user+4.4.2+HuaweiPE-TL10+CHNC00B260+ota-rel-keys%2Crelease-keys&from=mobile&m=Android-PE-TL10&cv=9.5.1&cid=14&i=864601026706713&v=4.4.2&qtime=20160411091603&pm=b61&uuid=1848c59c-185d-48d9-b0e9-782016041109&_chat_id=";

 public static String getData(int id) {
  String rs="";
  HttpGet httpGet=new HttpGet(url+id);
  HttpParams params=new BasicHttpParams();
  HttpConnectionParams.setConnectionTimeout(params, 5*1000);
  HttpConnectionParams.setSoTimeout(params, 5*1000);
  HttpClient httpClient=new DefaultHttpClient();
  try {
   HttpResponse execute = httpClient.execute(httpGet);
   
   int statusCode = execute.getStatusLine().getStatusCode();
   if(statusCode==200){
    HttpEntity entity = execute.getEntity();
    rs=EntityUtils.toString(entity,"utf-8");
   }
  } catch (ClientProtocolException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  }
  return rs;
  
  
 }

}



利用ajax实现与php(json数组)数据交互,并局部刷新页面

利用ajax实现与php数据交互,并局部刷新页面 本文主要有以下几个要点: ajax的基本语法结构jQuery基本语法json数组基本结构ajax回调函数中的json数组解析及局部刷新php基本语...
  • haibo0668
  • haibo0668
  • 2016年09月22日 12:08
  • 3586

Kotlin入门系列教程—RecyclerView

首先是网络请求 先看代码 异步网络请求 很简单的网络请求,就一句话 URL(url).readText() 注意kotlin中try...catch的写法 ...
  • weixin_37730482
  • weixin_37730482
  • 2017年06月05日 14:23
  • 1225

Django+Json+Jquery产生局部刷新

需求: 想使用Python创建一个ETL工具,其中页面部分采用Django框架,调度的显示及控制通过Web页面进行操作。 因此调度的数据抽取、加载、存储过程跑数过程需要实时(准实时)显示处...
  • samed
  • samed
  • 2015年09月17日 16:54
  • 2804

ajax与php利用json传输数据,实现局部刷新

  • 2015年11月05日 15:38
  • 767B
  • 下载

异步刷新返回json数据的增删改查

  • 2014年09月25日 14:47
  • 82KB
  • 下载

AJAX_JSON每秒刷新数据

  • 2016年01月13日 17:44
  • 2KB
  • 下载

全国城市数据 JSON解析之后即可使用

  • 2017年12月08日 08:49
  • 111KB
  • 下载

java解析json数据

  • 2017年12月29日 20:40
  • 10KB
  • 下载

C++解析JSON数据

  • 2017年11月17日 10:37
  • 13.12MB
  • 下载

Json数据格式协议C#解析方法

  • 2018年01月03日 11:44
  • 189KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解析json的刷新数据
举报原因:
原因补充:

(最多只允许输入30个字)