我有一个包含自定义视图的滚动视图。自定义视图比屏幕区域大,可以正确绘制。
然而,当滚动时,滚动视图 tends to call onDraw() 非常频繁,我无法使其平滑。
我使用 ScrollView.getDrawingRect() 计算屏幕上可见部分,并只绘制它,但它仍然返回整个视口(因此优化为不绘制屏幕外区域),而不是上一个位置和当前位置之间的增量。理想情况下,我只想绘制增量,而不是整个可见窗口。
如果有人能指导我如何使用绘图缓存,并且是否有助于优化滚动,我很乐意实现它,或者任何其他可能的解决方案都将不胜感激。
然而,当滚动时,滚动视图 tends to call onDraw() 非常频繁,我无法使其平滑。
我使用 ScrollView.getDrawingRect() 计算屏幕上可见部分,并只绘制它,但它仍然返回整个视口(因此优化为不绘制屏幕外区域),而不是上一个位置和当前位置之间的增量。理想情况下,我只想绘制增量,而不是整个可见窗口。
如果有人能指导我如何使用绘图缓存,并且是否有助于优化滚动,我很乐意实现它,或者任何其他可能的解决方案都将不胜感激。