关于BaseAdapter,SimpleAdapter的数据显示错乱问题,选中状态错乱问题,Checkbox选中状态错乱问题总结
来源:互联网 发布:台式电脑品牌推荐知乎 编辑:程序博客网 时间:2024/05/01 19:51
干货不上图,直接上分析和解决办法
今天有同事就GridView中某个item按下之后,显示效果的保存问题对我进行了询问,其实这个问题比较简单就是一些稍微深入一点的知识的理解:
基于Adapter的数据显示问题,经常会出现错乱的情况,我们怎么处理这个情况呢?
我们应该从Adapter的基本的加载原理入手,在BaseAdapter的getview的加载的时候我们如果复用了
contentView的话,系统在界面listview或者其他加载adapter的界面不发生大小变化的时候contentview是不会new的,
只会复用之前的contentview,这样的话,一屏的数据加载完毕后开始滚动的话,那个view中的数据消失,但是view的相关的显示状态还存在
所以如果某个item设置了选中状态,或者某个checkbox设置了check状态,这个view会加载新的数据,check状态在显示中就变化了
解决办法:
一、利用变量记录
搞一个数据的集合,保存选中状态,getView的时候我们进行判断
二、利用属性的变化
直接改变集合中对象的属性,这个地方肯定需要设计,一般是for循环的处理,显然耗时
如果还没有解决,那么恭喜你,你的getview里面的逻辑需要检查了
if 判断处理了UI,但是缺少else进行UI的再处理,这个地方很多实战较少的会缺乏相关的认识
以上对于GetView的方法进行了处理的相关的分析
如果你是SimpleAdapter的话出现了这个问题的话是怎么个情况呢?SimpleAdapter的问题请直接看内部的实现,一般不推荐用SimpleAdapter请大家使用BaseApdater数据源灵活,而且数据的加载很方便,还能定制相关需求
请正确使用BaseAdapter,加载数据显示这样就可以解决,整篇文章没有图片,不过如果按照文章中的方法去做是没有问题的
- 关于BaseAdapter,SimpleAdapter的数据显示错乱问题,选中状态错乱问题,Checkbox选中状态错乱问题总结
- 关于ListView中checkBox选中状态错乱问题的解决办法
- ListView+CheckBox 选中状态错乱问题
- 解决checkbox在滑动时选中状态错乱的问题
- FLEX CheckBox 翻页后选中状态显示错乱
- 一劳永逸解决CheckBox状态丢失或者错乱的问题
- 解决checkbox在ListView中的选中错乱问题
- 关于ListView中checkBox错乱的问题
- ListView 数据错乱问题的解决(CheckBox)
- ListView嵌套CheckBox滑动时CheckBox选中状态错乱
- ListView嵌套CheckBox滑动时CheckBox选中状态错乱
- 关于ListView+checkbox+edittext错乱问题的总结
- ListView+CheckBox错乱问题
- Listview Checkbox错乱问题
- Listview Checkbox错乱问题
- ListView/GridView嵌套CheckBox滑动时CheckBox选中状态显示错乱
- Gridview的Item嵌套CheckBox的另一种实现,避免了选中错乱等问题
- coordinatorlayout 显示错乱问题
- 使用IB时设置textView属性崩溃
- 果合发布年度报告《2013中国iOS市场发展趋势及手游开发六大核心策略》
- 用ActiveMQ+MQTT实现Android点对点消息通知
- ios的画面切换的动画效果
- Searching Arrays With NSPredicate and Blocks
- 关于BaseAdapter,SimpleAdapter的数据显示错乱问题,选中状态错乱问题,Checkbox选中状态错乱问题总结
- Andorid中C/C++调用Bionic库问题
- 调试grunt方法
- Android 线程池
- A.jsp跳转到B.jsp传递值方法的扩展(结合jquery mobile)
- MIME协议分析
- ios define NSLog debug 应用发布nslog注释
- 用RVCT编译STM32点亮LED
- LayoutParams的用法