为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

滚动到底部加载更多及下拉刷新LISTVIEW的使用

2017-11-21 6页 doc 28KB 8阅读

用户头像

is_792768

暂无简介

举报
滚动到底部加载更多及下拉刷新LISTVIEW的使用滚动到底部加载更多及下拉刷新LISTVIEW的使用 www.tsingyuan.cn 滚动到底部加载更多及下拉刷新listview的使用 本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的使用。 该ListView优点包括:a. 可自定义下拉响应事件(如下拉刷新) b.可自定义滚动到底部响应的事件(如滑动到底部加载更多) c.可自定义丰富的样式 d.高效(若下拉样式关闭不会加载其布局,同listView效率一致) e. 丰富的设置。 1、引入公共库 引入TrineaAndroidCommon@...
滚动到底部加载更多及下拉刷新LISTVIEW的使用
滚动到底部加载更多及下拉刷新LISTVIEW的使用 www.tsingyuan.cn 滚动到底部加载更多及下拉刷新listview的使用 本文主要介绍可同时实现下拉刷新及滑动到底部加载更多的ListView的使用。 该ListView优点包括:a. 可自定义下拉响应事件(如下拉刷新) b.可自定义滚动到底部响应的事件(如滑动到底部加载更多) c.可自定义丰富的样式 d.高效(若下拉样式关闭不会加载其布局,同listView效率一致) e. 丰富的设置。 1、引入公共库 引入TrineaAndroidCommon@GoogleCode作为你项目的library,或是自己抽取其中的 DropDownListView部分使用 2、在layout中定义 将布局中的ListView标签换成cn.trinea.android.common.view.DropDownListView标签 并加上自定义属性的命名空间 xmlns:listViewAttr=";,其中 cn.trinea.android.demo需要用自己的包名替换。如何自定义属性及其命名空间可见本文最后。xml代码如下: Java代码 DropDownListView自定义了三个boolean属性 isDropDownStyle示是否允许下拉样式,java代码中可自定义下拉listener,表示需要完成的任务 isOnBottomStyle表示是否允许底部样式,java代码中可自定义滚动到底部的listener,表示需要完成的任务 isAutoLoadOnBottom表示是否允许滚动到底部时自动执行对应listener,仅在isOnBottomStyle为true时有效 www.tsingyuan.cn PS:如果isDropDownStyle或isOnBottomStyle为false,并不会加载对应的布局,所以性能同ListView 一样 3、在Java类中调用 通过setOnDropDownListener设置下拉的事件,不过需要在事件结束时手动调用 onDropDownComplete恢复状态 通过setOnBottomListener设置滚动到底部的事件,不过需要在事件结束时手动调用 onBottomComplete恢复状态,示例代码如下: Java代码 /** * DropDownListViewDemo * * @author Trinea 2013-6-1 */ public class DropDownListViewDemo extends BaseActivity { private LinkedList listItems = null; private DropDownListView listView = null; private ArrayAdapter adapter; private String[] mStrings = { "Aaaaaa", "Bbbbbb", "Cccccc", "Dddddd", "Eeeeee", "Ffffff", "Gggggg", "Hhhhhh", "Iiiiii", "Jjjjjj", "Kkkkkk", "Llllll", "Mmmmmm", "Nnnnnn", }; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState, R.layout.drop_down_listview_demo); listView = (DropDownListView)findViewById(R.id.list_view); // set drop down listener listView.setOnDropDownListener(new OnDropDownListener() { @Override public void onDropDown() { new GetDataTask(true).execute(); } }); // set on bottom listener listView.setOnBottomListener(new OnClickListener() { @Override public void onClick(View v) { new GetDataTask(false).execute(); } }); listItems = new LinkedList(); listItems.addAll(Arrays.asList(mStrings)); adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_1, listItems); listView.setAdapter(adapter); } private class GetDataTask extends AsyncTask { www.tsingyuan.cn private boolean isDropDown; public GetDataTask(boolean isDropDown){ this.isDropDown = isDropDown; } @Override protected String[] doInBackground(Void... params) { try { Thread.sleep(1000); } catch (InterruptedException e) { ; } return mStrings; } @Override protected void onPostExecute(String[] result) { if (isDropDown) { listItems.addFirst("Added after drop down"); adapter.notifyDataSetChanged(); // should call onDropDownComplete function of DropDownListView at end of drop down complete. SimpleDateFormat dateFormat = new SimpleDateFormat("MM-dd HH:mm:ss"); listView.onDropDownComplete(getString(R.string.update_at) + dateFormat.format(new Date())); } else { listItems.add("Added after on bottom"); adapter.notifyDataSetChanged(); // should call onBottomComplete function of DropDownListView at end of on bottom complete. listView.onBottomComplete(); } super.onPostExecute(result); } } } 4、高级接口设置 5、样式设置(自定义header和footer信息) 来源:清源教育
/
本文档为【滚动到底部加载更多及下拉刷新LISTVIEW的使用】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索