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. Excel操作之 导出生成多个sheet页面

    首先需要下载一个NPOI.dll 下载地址:http://download.csdn.net/detail/president810/9503038 using System; using Syste ...

  2. C#中out和ref使用

    1.out必须在方法中为其赋值,在调用的时候必须在变量的前面加上out关键字,侧重输出. 2.ref修饰方法的参数,在调用的时候必须在变量的前面加上ref关键字,可以修改其值也可以不修改,侧重修改. ...

  3. Kettle中通过触发器方式实现数据 增量更新

    在使用Kettle进行数据同步的时候, 共有 1.使用时间戳进行数据增量更新 2.使用数据库日志进行数据增量更新 3.使用触发器+快照表 进行数据增量更新 今天要介绍的是第3中方法. 实验的思路是这样 ...

  4. onActivityResult不被执行的问题。

    1.首先,返回的Activity必须使用startActivityForResult启动. 2.其次,在返回的Activity中必须保证setResult方法在finish方法之前执行,否则onAct ...

  5. js hashMap

    /** * MAP对象,实现MAP功能 * * 接口: * size() 获取MAP元素个数 * isEmpty() 判断MAP是否为空 * clear() 删除MAP所有元素 * put(key, ...

  6. 切换到mint了,纪念一下

  7. Headfirst设计模式的C++实现——工厂方法(Factory Method)

    引用原书的一句话:所有的工厂模式都用来封装对象的创建,工厂方法模式通过让子类决定该创建的对象是什么来达到封装的目的. Pizza类及其派生类与上一例相同 PizzaStore.h #ifndef _P ...

  8. LINUX开机启动过程

    LINUX开机启动过程 启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息 ...

  9. ubuntu server 安装

    http://tigerlchen.iteye.com/blog/1765765  解决CDROM找不到的bug

  10. jekyll 的安装

    静态网站生成器Jekyll 是一个简洁的.特别针对博客平台的 静态网站 生成器.它使用一个模板目录作为网站布局的基础框架,并在其上运行 Textile . Markdown 或 Liquid 标记语言 ...