Android cacheColorHint导致listView中出现滞后滚动

Android cacheColorHint导致listView中出现滞后滚动,android,listview,scroll,Android,Listview,Scroll,我对listView和cacheColorHint有一个奇怪的问题 我将活动的背景设置为渐变 当我设置android:cacheColorHint=“#00000000”时,滚动会变慢,否则会非常平滑 我还试着通过编程来设置它…同样的滞后滚动(愚蠢的事情认为它会工作) 当我不设置它时…我滚动时会闪烁,这就是我首先设置cacheHintColor的原因 这是和这个问题一样的问题,尽管看起来还没有解决 我见过很多应用程序,尽管有各种背景,但都能平滑滚动…所以请建议解决方法或修复方法 其他详情: 应

我对listView和cacheColorHint有一个奇怪的问题

我将活动的背景设置为渐变

当我设置android:cacheColorHint=“#00000000”时,滚动会变慢,否则会非常平滑

我还试着通过编程来设置它…同样的滞后滚动(愚蠢的事情认为它会工作)

当我不设置它时…我滚动时会闪烁,这就是我首先设置cacheHintColor的原因

这是和这个问题一样的问题,尽管看起来还没有解决

我见过很多应用程序,尽管有各种背景,但都能平滑滚动…所以请建议解决方法或修复方法

其他详情: 应用程序是一个twitter客户端,它使用ListFragment中的列表。
每个列表项都包含一个从twitter加载的图像…我使用的是一个开源的图像加载程序类,它工作得很好(不太记得是哪一个)…但由于如果未设置cacheHintColor,则滚动效果良好。因此,我可以排除图像缓存的问题…

可能速度较慢,因为您正在设置透明缓存颜色提示,这会在滚动期间强制alpha合成。如果您的背景是纯色,请尝试设置带有完整alpha的提示,例如0xff000000


此外,我认为打开scrollingCache将缓存ListView的过度滚动部分,这意味着需要更少的绘图,但会牺牲更多的内存使用。

我的建议是首先使用traceview,并检查为什么列表如此缓慢。此外,还要确保重用在适配器的getView()方法中传递给您的视图。还可以使用视图保持器模式..我相信我们可以帮助你们更多人发布一些代码..我可以通过缩小图像视图的大小来解决问题..它拉伸了一个更小的图像来填充图像视图..当我缩小它时,它工作得很好..同样对于列表视图,我将scrollingCache设置为true…知道为什么吗发生..?您的图像视图在每个帧上缩放软件中的位图。因此,就性能而言,这总是代价高昂的。另外,当您使用scollingCache时,内部发生的情况是系统首先将每个子视图渲染为屏幕外位图,这样只需翻译这些位图即可完成滚动。这种优化技术是您体验到闪烁的原因。感谢您的解释…当将大图像缩小到ImageView的大小时,是否也会发生这种情况?是的。如果可能,您应该完全避免在imageview中进行缩放。看一看。如果位图是应用程序资源,则只需将位图打包为最终的正确大小即可。否则,您可以在运行时使用Bitmap.createScaledBitmap()缩放位图