Android视图滚动性能故障排除

Android视图滚动性能故障排除,android,performance,view,scroll,Android,Performance,View,Scroll,我目前在一些视图中遇到一些滚动问题。Galaxy标签(7英寸)的性能相当差。我不想在这里解释我的视图层次结构,而是想知道是否有人对如何解决Android上的滚动性能问题有一般性的指导。我感兴趣的是在构建视图时应该注意的任何方法或问题,以及如何找到导致延迟滚动的故障点。我认为这些建议将对您有所帮助 1-使用高效的ListAdapter(利用getView()方法中的ConvertView),如下所示: 2-如果您是通过网络加载图像,则线程加载程序并将图像异步设置为视图 3-如果要在列表项中渲染图

我目前在一些视图中遇到一些滚动问题。Galaxy标签(7英寸)的性能相当差。我不想在这里解释我的视图层次结构,而是想知道是否有人对如何解决Android上的滚动性能问题有一般性的指导。我感兴趣的是在构建视图时应该注意的任何方法或问题,以及如何找到导致延迟滚动的故障点。我认为这些建议将对您有所帮助

1-使用高效的ListAdapter(利用getView()方法中的ConvertView),如下所示:

2-如果您是通过网络加载图像,则线程加载程序并将图像异步设置为视图

3-如果要在列表项中渲染图像,请以HashMap的形式保留缓存;i、 e.HashMap,其中integer是位置,Drawable是具体化的图像。在getView()方法中使用缓存中可用的Drawables,只有在请求特定索引/位置时Drawables为null时才加载图像

您可能已经知道,每次将索引中的项滚动到可见屏幕时,都会呈现列表项(调用getView();因此,缓存图像和使用convertView(视图已经创建过一次)将使适配器和列表更高效

您甚至可以在getView()方法中放置一些system.out来查看差异

我希望这些能有所帮助

最好的


-塞尔坎

我这几条建议会对你有所帮助

1-使用高效的ListAdapter(利用getView()方法中的ConvertView),如下所示:

2-如果您是通过网络加载图像,则线程加载程序并将图像异步设置为视图

3-如果要在列表项中渲染图像,请以HashMap的形式保留缓存;i、 e.HashMap,其中integer是位置,Drawable是具体化的图像。在getView()方法中使用缓存中可用的Drawables,只有在请求特定索引/位置时Drawables为null时才加载图像

您可能已经知道,每次将索引中的项滚动到可见屏幕时,都会呈现列表项(调用getView();因此,缓存图像和使用convertView(视图已经创建过一次)将使适配器和列表更高效

您甚至可以在getView()方法中放置一些system.out来查看差异

我希望这些能有所帮助

最好的


-塞尔坎

这确实有帮助,谢谢你。。。我要找的正是这样的小道消息:-)这确实有帮助,谢谢。。。我要找的正是这样的小道消息:-)