滚动视图往往会在滚动时不停地调用onDraw(),而我似乎无法使其平滑.
我使用ScrollVIEw.getDrawingRect()来计算屏幕的可见部分并且只绘制到它,但它仍然返回整个视口(因此它被优化为不绘制屏幕外区域),而不是最后位置和当前之间的增量一.理想情况下,我只想绘制delta,而不是整个可见窗口.
如果有人能够向我指出有关如何使用绘图缓存的更多信息,并且如果这将有助于优化滚动,我很乐意实现它,或任何其他可能的解决方案,将非常感激.
解决方法 滚动内容时,需要重绘整个视口,因为所有内容都已移动.我不认为优化ScrollVIEw需要做任何事情 – 如果滚动速度慢,那么自定义视图的绘制方法太慢了.尽量避免在绘图方法中创建对象,这通常是绘图性能差的主要原因.
编辑:此外,滚动视图可以快速向上或向下快速显示仍然在屏幕上绘制的旧内容,然后请求仅重绘屏幕的“新”部分. (仅适用于不透明视图).
总结以上是内存溢出为你收集整理的android – Scrollview优化全部内容,希望文章能够帮你解决android – Scrollview优化所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)