当数据库有更改时,listview可以感知并刷新但是我只改了一条数据的一个字段,就不好用了但删除这条数据是好用,请问详细用法
解决方案 »
- android手机,“正在运行的服务”占用空间大,有20多M,如何解决?
- 我写了一个HorizontalScrollView,是动态的添加子项,该怎么让其自动显示刚添加的子项,
- android 可以用在工控上吗
- 关于 Android调用系统音乐播放器 播放在线音乐的问题
- 图片加载and popupwindow的问题
- 在Activity中如何捕获长按MENU键的事件
- 求爵士鼓各鼓点声音下载
- 初学者——求救啊
- eclipse导入android项目的问题
- 如何适配不同分辨率的pad,手机
- android利用HttpURLConnection调用局域网中服务器上的webservice出现问题
- 安装4.0模拟器的问题,求指点
删除数据库数据时,调用notifyDataSetChanged方法有效。
--------------------------
你是通过按下控件修改和删除数据库中的数据吗?如果是的话:
大概的思路是这样的:当你按下控件时,会执行一条SQL语句,数据库中的数据就会发生改变,如果想将数据库中的数据变动映射到Activity中,可以调用notifyDataSetChanged方法。举例来说明:// 下面是对ImageView进行监听,该功能是对指定的菜名进行减少一份的操作,
// 在自定义适配器的getView方法中实现的
holder.imgSub.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v)
{
// 1.获得ListView的菜名
// 2.更新数据库中的RM表,将times列的次数进行修改
// 3.在数据库中的RM表里获得数据,存储在ArrayList<Object>对象中
// 4.更新ListView.
String dn = bean.getDn();
HandleData.updateRMTimes(context, dn, "sub");
itemList = HandleData.updateData(context);
refreshListView(); // 这个方法里面就是一条notifyDataSetChanged()语句,只是我把它作为一个方法封装起来了。
}
});
public void refersh() {
listItemAdapter.notifyDataSetChanged();
System.out.println("refresh after update ok");
}
方法,想实现刷新listview的功能,解释详细点