android – Scrollview优化

android – Scrollview优化,第1张

概述我有一个包含自定义视图的scrollview.自定义视图大于屏幕区域并正确绘制. 滚动视图往往会在滚动时不停地调用onDraw(),而我似乎无法使其平滑. 我使用ScrollView.getDrawingRect()来计算屏幕的可见部分并且只绘制到它,但它仍然返回整个视口(因此它被优化为不绘制屏幕外区域),而不是最后位置和当前之间的增量一.理想情况下,我只想绘制delta,而不是整个可见窗口. 如 我有一个包含自定义视图的scrollvIEw.自定义视图大于屏幕区域并正确绘制.

滚动视图往往会在滚动时不停地调用onDraw(),而我似乎无法使其平滑.

我使用ScrollVIEw.getDrawingRect()来计算屏幕的可见部分并且只绘制到它,但它仍然返回整个视口(因此它被优化为不绘制屏幕外区域),而不是最后位置和当前之间的增量一.理想情况下,我只想绘制delta,而不是整个可见窗口.

如果有人能够向我指出有关如何使用绘图缓存的更多信息,并且如果这将有助于优化滚动,我很乐意实现它,或任何其他可能的解决方案,将非常感激.

解决方法 滚动内容时,需要重绘整个视口,因为所有内容都已移动.我不认为优化ScrollVIEw需要做任何事情 – 如果滚动速度慢,那么自定义视图的绘制方法太慢了.

尽量避免在绘图方法中创建对象,这通常是绘图性能差的主要原因.

编辑:此外,滚动视图可以快速向上或向下快速显示仍然在屏幕上绘制的旧内容,然后请求仅重绘屏幕的“新”部分. (仅适用于不透明视图).

总结

以上是内存溢出为你收集整理的android – Scrollview优化全部内容,希望文章能够帮你解决android – Scrollview优化所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1136297.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存