ListView内容变化后的动态刷新

基本知识点:

1.更新适配器Adapter数据源

2.调用适配器Adapter的刷新方法notifyDataSetChanged()

首先需要定义ListView和对应适配器Adapter:

//用于显示用户列表的ListView
private ListView userList = null;
//用户列表userList对应的适配器
SimpleAdapter simpleAdapter = null;
//用户列表userList对应的适配器的数据源
List<Map<String,?>> dataSimpleAdapter = new ArrayList<Map<String,?>>();
//用户列表ListView行布局元素
int[] userListViewTo = null;
//用户列表ListView行布局元素对应的适配器key值
String[] userListViewFrom = null; /**
* 初始化用户列表组件适配器.
*/
public void initUserListViewAdapter(){
userList = (ListView)findViewById(R.id.user_list_users);
userListViewTo = new int[]{R.id.user_list_item_user_id,
R.id.user_list_item_user_Login_id,
R.id.user_list_item_user_login_pass}; int len = userListViewTo.length;
userListViewFrom = new String[len];
for(int i=;i<len;i++){
userListViewFrom[i]=String.valueOf(i);
}
}

然后配置ListView的适配器 Adapter:

    /**
* 显示ListView组件.
*/
public void showListView(){
//用户列表ListView布局文件
int resource = R.layout.user_list_item;
//准备适配器数据源
createAdapterData();
//绑定适配器并返回
simpleAdapter = new SimpleAdapter(context, dataSimpleAdapter, resource, userListViewFrom, userListViewTo);
//设置ListView组件的适配器.
userList.setAdapter(simpleAdapter);
} /**
* 生成适配器数据源
* @param itemCount
*/
public void createAdapterData(){
//准备适配器内容
dataSimpleAdapter.clear();//确保数据源是空的
int itemLength = ; for(int i=;i<itemLength;i++){
Map<String,Object> map = new HashMap<String,Object>();
map.put(userListViewFrom[], "数据列1-"+i);
map.put(userListViewFrom[], "数据列2-"+i);
map.put(userListViewFrom[], "数据列3-"+i);
dataSimpleAdapter.add(map);
}
}

最后,只要更新适配器simpleAdapter的数据源dataSimpleAdapter,然后执行方法:

//刷新listview
simpleAdapter.notifyDataSetChanged();

Android ListView内容变化后的动态刷新的更多相关文章

  1. JQuery如何监听DIV内容变化

    这几天在做一个微博的接入,需要判断微博是否被关注,要检查微博标签的DIV是否有“已关注”的字符,但这个DIV的内容是微博JSSDK动态生 成.$("#id").html()是获取不 ...

  2. 弹出输入框后,将listview内容遮住,解决方案

    转自http://blog.csdn.net/silence_cdsn/article/details/7987063 更改listview的布局属性 之前的布局: <ListView andr ...

  3. 实现Android ListView 自动加载更多内容

    研究了几个小时终于实现了Android ListView 自动加载的效果. 说说我是怎样实现的.分享给大家. 1.给ListView增加一个FooterView,调用addFooterView(foo ...

  4. 【腾讯Bugly干货分享】Android ListView与RecyclerView对比浅析--缓存机制

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/5811d3e3ab10c62013697408 作者:黄宁源 一,背景 Recy ...

  5. Android ListView OnItemLongClick和OnItemClick事件内部细节分享以及几个比较特别的属性

    本文转自 http://blog.sina.com.cn/s/blog_783ede030101bnm4.html 作者kiven 辞职3,4个月在家休息,本以为楼主要程序员逆袭,结果失败告终继续码农 ...

  6. Android ListView工作原理完全解析,带你从源码的角度彻底理解

    版权声明:本文出自郭霖的博客,转载必须注明出处.   目录(?)[+] Adapter的作用 RecycleBin机制 第一次Layout 第二次Layout 滑动加载更多数据   转载请注明出处:h ...

  7. Android ListView工作原理全然解析,带你从源代码的角度彻底理解

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/44996879 在Android全部经常使用的原生控件其中.使用方法最复杂的应该就是 ...

  8. android ListView 属性

    android:divider="#fffff" 分割线颜色 android:dividerHeight="1px" 分割线高度 divider 分割线-去掉分 ...

  9. android ListView 九大重要属性详细分析、

    android ListView 九大重要属性详细分析. 1.android ListView 一些重要属性详解,兄弟朋友可以参考一下. 首先是stackFromBottom属性,这只该属性之后你做好 ...

随机推荐

  1. NET环境下的未处理异常(unhandled exception)的解决方案

    NET环境下的未处理异常(unhandled exception )的解决方案 .Net 框架提供了非常强大的异常处理机制,同时对一些非托管代码很难控制的系统问题比如指针越界,内存泄漏等提供了很好的解 ...

  2. Win7上安装oracle中可能遇到的错误

    安装oracle,总是出现一个警告两个错误错误,其描述是:OUI-18001:不支持操作系统’Windows Vista版本6.1’,找了好久,终于找到原因,因为oracle不支持Win7操作系统. ...

  3. apparmor介绍

    AppArmor AppArmor 类似于selinux ,主要的作用是设置某个可执行程序的访问控制权限,主要区别就在于apparmor是以路径(path)为基础,而selinux以i节点(inode ...

  4. hibernate_validator_01

    1.环境准备(Maven工程) <?xml version="1.0" encoding="UTF-8"?> <project xmlns=& ...

  5. Spring+Maven+Eclipse构建Web工程

    转载请注明出处:http://www.cnblogs.com/lidabnu/p/5657439.html 1 环境准备 下载Eclipse:http://www.eclipse.org/downlo ...

  6. IOS 学习笔记 2015-03-27 我理解的OC-代理模式

    案例1 KCButton.h // // KCButton.h // Protocol&Block&Category // // Created by Kenshin Cui on 1 ...

  7. EntityClient 介绍

    System.Data.EntityClient 命名空间是 实体框架的 .NET Framework 数据提供程序.EntityClient 提供程序使用存储特定的 ADO.NET 数据提供程序类和 ...

  8. 【ADO.NET】6、SQLHelper简单封装

    using System.Data.SqlClient;using System.Configuration;引用:System.Configuration 连接字符串放到配置文件中 新建一个类,写如 ...

  9. spring拦截器

    一:拦截器配置 <!-- 拦截器 --> <mvc:interceptors> <mvc:interceptor> <mvc:mapping path=&qu ...

  10. emment语法

    emment插件语法.md 元素 div → <div></div>foo → <foo></foo> 嵌套运算符 子: > div>ul& ...