社区
Android
帖子详情
Android ListView中实现滑动不销毁已加载图片
hejun041
2016-01-15 06:27:28
如题,为了提升用户体验,当用户滑动加载了图片之后,再滑动回去,怎么实现直接就看到已经加载好的图片。
ListView滑动过程中之前的Item会被销毁掉,怎么实现只回收其他资源,不回收图片啊。
整个效果就是,如果我ListView全部加载完成之后,无论用户怎么滑动,图片都还在,而不会重新加载
虽然说设置了缓存之后重新加载不会消耗流量,但是体验不好,面试中遇到的问题,求大神解答
...全文
323
9
打赏
收藏
Android ListView中实现滑动不销毁已加载图片
如题,为了提升用户体验,当用户滑动加载了图片之后,再滑动回去,怎么实现直接就看到已经加载好的图片。 ListView滑动过程中之前的Item会被销毁掉,怎么实现只回收其他资源,不回收图片啊。 整个效果就是,如果我ListView全部加载完成之后,无论用户怎么滑动,图片都还在,而不会重新加载 虽然说设置了缓存之后重新加载不会消耗流量,但是体验不好,面试中遇到的问题,求大神解答
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
青春唱不完的歌
2016-01-23
打赏
举报
回复
android 在adapter中自己有回收和重用的机制,但是你想不回收图片,你的程序会变得很卡,你可以使用三级缓存 LruCache SDCard net
God眯眯眼
2016-01-19
打赏
举报
回复
三级缓存
hejun041
2016-01-18
打赏
举报
回复
OK 我试试看,谢谢个位啦
qq_27226823
2016-01-17
打赏
举报
回复
用缓存先加载到内存 用LruCache
柒加伊
2016-01-16
打赏
举报
回复
正常的listView加载图片加文字是不会出现你那种情况的, 你可以把图片数据从服务器一起去回到本地, 然后加载到Adapter就不会出现你说的那种情况了.
wei220000
2016-01-15
打赏
举报
回复
https://github.com/tianzhijiexian/ExRecyclerView 这个项目就是用的fresco,简单好用,你要的功能都有,
Kaede31416
2016-01-15
打赏
举报
回复
LruCache
静默加载
应用层
2016-01-15
打赏
举报
回复
各种图片加载框架,现在用fresco还是比较多些。框架都有自己的回收、释放资源机制,请求过得图片都会按照自己的缓存机制存在内存中,内存中有的图片不会再进行网络请求
马甲大王
2016-01-15
打赏
举报
回复
imageloader.图片加载的框架,对图片缓存起来了,下次加载就快了。
Android
使用ViewPager快速切换Fragment时卡顿的优化方案
当ViewPager切换到当前的Fragment时,Fragment会
加载
布局并显示内容,如果用户这时快速切换ViewPager,即Fragment需要
加载
UI内容,而又频繁地切换Fragment,就容易产生卡顿现象(类似在
ListView
快速
滑动
的同时
加载
图片
容易卡顿)。 优化方案: 1.Fragment轻量化 如果ViewPager
加载
的Fragment都比较轻量,适当精简Fragment的布局,可提高Fragment
加载
的速度,从而减缓卡顿现象。 2.防止Fragment被
销毁
ViewPager在切换的时候,如果频繁
销毁
和
加载
Fragment,就容易产生卡顿现象,阻止Fragment的
Super ScrollView for UGUI 2.2.2一款unity3d非常强大的
滑动
制作插件
Super ScrollView for UGUI提供基于UGUI ScrollRect的可轻松定制的ScrollView。它是一组C#脚本,可帮助您创建所需的ScrollView。这是非常强大的和高度优化的性能。 文件
Android
演示应用程序 演示: - 聊天消息列表演示 - 水平画廊演示 - 垂直画廊演示 - GridView演示 - PageVew演示 - TreeVew演示 - 与稠粘头演示的TreeView - 旋转日期选择器 - 更改项目高度演示 - 下拉刷新演示 - 拉起来
加载
更多的演示 - 点击
加载
更多演示 - 选择并删除演示 - GridView删除项目演示 - 顶部到底部的演示 - 自下而上的演示 - 从左到右的演示 - 右侧演示 - 响应GridView演示 - TreeViewWithChildrenIndent演示 特征: -
ListView
和GridView和TreeView - 无限的项目 - 项目在不同的大小(高度/宽度) - 具有不同预制的物品 - 在初始时间大小未知的项目 - 垂直滚动视图(从上到下,从下到上) - 水平滚动视图(从左到右,从右到左) - 项目填充 - 滚动到指定的项目 - 滚动到具有偏移量的项目 - 项目计数在运行时更改 - 项目大小(高度/宽度)在运行时更改 - 物品捕捉到视口
中
的任何位置 - 项目循环,如微调 - 添加/删除项目 - 全部删除/删除所有项目 - 刷新并重新
加载
项目 - 使用池缓存项目,不要在运行时
销毁
项目 - 有效回收物品 - 平台无关 - UGUI支持 - 支持Unity平台(IOS /
Android
/ Mac / PC / Console / Winphone / WebGL ...)
深入
Android
HandlerThread 使用及其源码完全解析
关联篇:深入
Android
的消息机制源码详解-Handler,MessageQueue与Looper关系 关联篇:Handler内存泄漏及其解决方案 本篇我们将来给大家介绍HandlerThread这个类,以前我们在使用线程执行一个耗时任务时总会new一个Thread的线程去跑,当任务执行完后,线程就会自动被
销毁
掉,如果又由新的任务,我们又得新建线程…..我们假设这样的一个情景,我们通过
listview
去
加载
图文列表,当我们往下
滑动
时,这时需要不断去请求网络资源,也就是需要不断开线程去
加载
网络资源,如果每次都new一个Thread,这显然是不合理的,那么该怎么办呢?相信大家都应该用过
图片
加载
【
Android
】Glide结合Recyclerview(也适用于
Listview
)
实现
列表
滑动
的时候
图片
不
加载
,
滑动
停止的时候
加载
(已修正
Listview
部分以及排版)
很多人会问为什么要用 glide,其它的库可以么?其实只要
图片
库带有对应的方法都是可以的,只不过真心觉得这个库不错,就算是推荐吧。 然后着重讲 Recyclerview 是因为 Recyclerview 在 adapter 的onBindViewHolder
中
对item的操作比较严格,如果处理操作比较多,耗时长(比如单个item的
图片
比较多)就会造成Recyclerview卡的现象(Listv...
android
-
ListView
优化机制及
滑动
时数据时出现的数据错乱重复问题
目录(?)[+] 该篇内容主要是记录我在实际开发
中
遇到的
ListView
滑动
时数据错乱的几种情况,以及解决方法。在进行
ListView
滑动
时数据错乱问题讨论之前会对
ListView
所谓的进行说明。文章末尾分享了几篇文章,增强对
ListView
使用以及Adapter优化的理解,其
中
有对adapter优化方法的耗时测试的介绍。 Getting Start 遇到过的List
Android
80,351
社区成员
91,288
社区内容
发帖
与我相关
我的任务
Android
移动平台 Android
复制链接
扫一扫
分享
社区描述
移动平台 Android
android
android-studio
androidx
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章