列表下拉刷新
来源:互联网 发布:mac如何压缩文件 编辑:程序博客网 时间:2024/06/09 17:41
listview下拉刷新
main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" > <com.handmark.pulltorefresh.library.PullToRefreshListView android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/pull_refresh_list" /></RelativeLayout>
MainActivity // 找控件 listView = (PullToRefreshListView) findViewById(R.id.pull_refresh_list); // 请求数据 new GetDataTask() .execute("数据地址");----------// listview刷新监听 listView.setOnRefreshListener(new OnRefreshListener<ListView>() { @Override public void onRefresh(PullToRefreshBase<ListView> refreshView) { String label = DateUtils.formatDateTime( getApplicationContext(), System.currentTimeMillis(), DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_ABBREV_ALL); refreshView.getLoadingLayoutProxy().setLastUpdatedLabel(label); // 再次请求数据 new GetDataTask().execute("地址"); } });----------//异步操作 private class GetDataTask extends AsyncTask<String, integer, String> { private String str; @Override//运行在子线程做耗时操作 protected String doInBackground(String... params) { String string = params[0]; HttpClient httpClient = new DefaultHttpClient(); try { HttpResponse response = httpClient .execute(new HttpPost(string)); if (response.getStatusLine().getStatusCode() == 200) { HttpEntity entity = response.getEntity(); str = EntityUtils.toString(entity); } } catch (ClientProtocolException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } return str; } @Override//运行在主线程 protected void onPostExecute(String result) { super.onPostExecute(result); Log.i("Main", result); Gson gson = new Gson(); MyBean myBean = gson.fromJson(result, MyBean.class); list = myBean.data; mAdapter = new MyBaseAdapter(MainActivity.this, list); listView.setAdapter(mAdapter); //每次请求完数据通知适配器数据改变 mAdapter.notifyDataSetChanged(); //通知listview刷新完成 listView.onRefreshComplete(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; }![下拉刷新的效果](http://img.blog.csdn.net/20160331205125714)
1 0
- 列表下拉刷新
- android列表下拉刷新
- 下拉刷新列表
- 列表下拉刷新
- 【整理】android列表下拉刷新
- 下拉刷新列表的实现
- Ajax异步刷新下拉列表
- 下拉列表刷新,分页加载
- Android自定义下拉刷新列表
- Android列表下拉刷新操作
- .net2003+ajax 无刷新区域下拉列表
- Android 实现仿iphone下拉刷新列表
- Android中实现下拉刷新列表分析
- RecyclerView+SwipeRefreshLayout实现下拉刷新列表
- 列表上拉刷新与下拉加载
- android中信息列表的下拉刷新和下拉加载
- 列表下拉/上拉刷新:(三)强制刷新
- 列表下拉/上拉刷新:(三)强制刷新
- Android开发颜色代码大全
- bounds和frame的区别
- 正则表达式(表达法)
- 【POJ 1151】 Atlantis(离散化+扫描线)
- [leetcode] 38. Count and Say
- 列表下拉刷新
- (OK) CentOS 7—adb—android-sdk_r24.3.3-linux.tgz
- Java高级部分之线程重点总结(上)
- 最近的javascrip学习心得及小心情
- 码农小汪-剑指Offer之25 -字符串的排列(全排列)
- CRT输入和输出(文件)
- 判断能否构成三角形 并输出三角形的周长和面积
- java集合Map,HashMap,TreeMap知识点总结
- WinDbg学习笔记(转)