Android 毕加索加载的Recyclerview已加载图像
在我的android应用程序中,有一个recyclerview,每个项目都有一个图像,我已经用毕加索加载了它们,问题是在向下滚动一些图像之后,如果你再次向上滚动一些图像加载,这很烦人。如何缓存所有图像,以避免再次重新加载? 我知道这不是第一次有人问这个问题,但在搜索了很多之后,我找不到一个全面的解决方案。 下面是我如何使用毕加索的:Android 毕加索加载的Recyclerview已加载图像,android,Android,在我的android应用程序中,有一个recyclerview,每个项目都有一个图像,我已经用毕加索加载了它们,问题是在向下滚动一些图像之后,如果你再次向上滚动一些图像加载,这很烦人。如何缓存所有图像,以避免再次重新加载? 我知道这不是第一次有人问这个问题,但在搜索了很多之后,我找不到一个全面的解决方案。 下面是我如何使用毕加索的: Picasso.with(context).load(link).into(myHolder.img); Piccosa在内部加载缓存的图像。您不需要显式指定任何
Picasso.with(context).load(link).into(myHolder.img);
Piccosa在内部加载缓存的图像。您不需要显式指定任何内容。您可以阅读其文档以了解缓存策略。以及不同类型的缓存,包括毕加索缓存的默认行为
Piccosa在内部加载缓存的图像。您不需要显式指定任何内容。您可以阅读其文档以了解缓存策略。以及不同类型的缓存,包括毕加索缓存的默认行为 会解决你的问题
将修复您的问题可能重复的@LucaNicoletti是的,这是一个类似的问题,但我在“回收器”视图的适配器中获取图像,并且在项目第二次加载时再次加载图像。这个链接中的答案没有帮助。你是说它总是从网络加载的吗?不是从磁盘/memroy?@hakim不总是,大多数时候。嗯,很奇怪,很抱歉,只是确认您是否启用了调试指示器
setindicatorEnabled(true)
?顺便说一句,为了使图像加载看起来快速/即时,您还可以使用@LucaNicoletti的noFade()
可能重复项禁用默认淡入动画是的,这是一个类似的问题,但我在recycler视图的适配器中获取图像,并且在项目第二次加载图像时再次加载图像。这个链接中的答案没有帮助。你是说它总是从网络加载的吗?不是从磁盘/memroy?@hakim不总是,大多数时候。嗯,很奇怪,很抱歉,只是确认您是否启用了调试指示器setindicatorEnabled(true)
?顺便说一句,要使图像加载看起来快速/即时,还可以使用noFade()
禁用默认淡入淡出动画这实际上是正确的答案。它保持加载的原因是因为图像的大小。通过使用fit()
或resize(w,h)
将解决此问题-更小的图像大小=更快的缓存。这实际上是正确的答案。它保持加载的原因是因为图像的大小。通过使用fit()
或resize(w,h)
将解决此问题-图像大小越小=缓存速度越快。
Picasso.with(context).load(link).fit().into(Target)