前端之家收集整理的这篇文章主要介绍了
android – Scrollview优化,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个包含
自定义视图的scrollview.
自定义视图大于屏幕区域并正确绘制.
滚动视图往往会在滚动时不停地调用onDraw(),而我似乎无法使其平滑.
我使用ScrollView.getDrawingRect()来计算屏幕的可见部分并且只绘制到它,但它仍然返回整个视口(因此它被优化为不绘制屏幕外区域),而不是最后位置和当前之间的增量一.理想情况下,我只想绘制delta,而不是整个可见窗口.
如果有人能够向我指出有关如何使用绘图缓存的更多信息,并且如果这将有助于优化滚动,我很乐意实现它,或任何其他可能的解决方案,将非常感激.
滚动
内容时,需要重绘整个视口,因为所有
内容都已移动.我不认为优化ScrollView需要做任何事情 – 如果滚动速度慢,那么
自定义视图的绘制
方法太慢了.
尽量避免在绘图方法中创建对象,这通常是绘图性能差的主要原因.
编辑:此外,滚动视图可以快速向上或向下快速显示仍然在屏幕上绘制的旧内容,然后请求仅重绘屏幕的“新”部分. (仅适用于不透明视图).
原文链接:https://www.f2er.com/android/315768.html