我在sqlite数据库中存放了一个星期的课程数据,通过sql语句返回Cursor后,封装到List<HashMap<String,Object>>对象中,在页面中的ListView显示,现在能实现查询当天数据.如何实现点击下一天或上一天,来动态切换ListView的数据?
public void onClick(View v) {
if (v.getId() == R.id.image_pre) {
c.add(Calendar.DATE, -1);
}
if (v.getId() == R.id.image_next) {
c.add(Calendar.DATE, 1);
} }
我把adapter.notifyDataSetChanged();写在按钮事件处理中也不行.
然后想着是不是界面要重新载入一下,但是界面重新载入后在按钮事件中的日期修改也就不起作用了.
public void onClick(View v) {
if (v.getId() == R.id.image_pre) {
c.add(Calendar.DATE, -1);
}
if (v.getId() == R.id.image_next) {
c.add(Calendar.DATE, 1);
} }
我把adapter.notifyDataSetChanged();写在按钮事件处理中也不行.
然后想着是不是界面要重新载入一下,但是界面重新载入后在按钮事件中的日期修改也就不起作用了.
解决方案 »
- android编写的MP3播放器,点击开始时候报错,请各位帮忙解答一下
- android 使用外部数据库问题
- 变态需求,求高人指点!
- 请问为什么我用setPreviewCallback会黑屏呢?
- AutoCompleteTextView模糊提示
- popupwindow上控件怎么像在activity上一样有按键响应?
- 我执行adb shell显示一大堆内容
- MotionEvent.ACTION_CANCEL事件如何被触发?
- 请问九宫格解锁中划线是怎么实现的??
- 探讨!content provider中 android:multiprocess 作用。
- Android Camera 明细
- 求想法...求IDEA ,大家踊跃发言
c.moveToNext
c.moveToPrevious
首先,谢谢回复.我可能把问题没描述完整.我在数据库访问层(好像可以这么说吧)写了增删改查等方法,其中"查"这个方法的返回值不是游标而是List<HashMap<String,Object>>对象,所以在Activity中调用查询方法时,已经关闭数据库对象了,查过来的数据应该算是个数据包了.上一天或下一天的数据可以查出来,现在的问题是在界面点击事件后怎么刷新ListView中的数据.刚看了一个方法好像是在事件中再获得ListView....
有个思路,楼主试试:
在适配器里追加一个变量作为list的游标,通过该游标确认当前的listview显示哪数据list中的哪个HashMap。在activity的button的监听事件内,更变上边的游标值至你想显示的那天,
然后调用activity的listview的notifyDataSetInvalidated()方法,即可刷新listView显示
写得又点乱。楼主请担待!