gpt4 book ai didi

android - 使用多个脏矩形更新 SurfaceView

转载 作者:行者123 更新时间:2023-11-30 03:48:13 27 4
gpt4 key购买 nike

在我正在进行的项目中,我决定使用 SurfaceView 而不是自定义双缓冲介质。它提供了我需要的一切,而且它已经是双缓冲的。 问题是它不会让我指定多个脏矩形来重绘。 SurfaceView.lockCanvas(Rect) 只允许单个矩形并且没有参数重绘整个东西非常昂贵。显然,为每个 Rect 调用 lockCanvas(Rect) 的另一种解决方案会导致屏幕上出现令人眼花缭乱的闪烁。 您是否有任何解决方案可以让我有机会留在 Android API 领域,如果没有,您是否有我可以使用的任何外部替代方案?

最佳答案

如果您在需要调用 lockCanvas 之前知道脏区域(听起来您可能会这样),您可以计算一个“ super 矩形”来锁定包含所有矩形的区域。例如,如果您的矩形是(使用 l、r、t、b 坐标)[0,10,0,20] 和 [15,30,10,35],您的 super 矩形将是 [0,30,0,35 ].

关于android - 使用多个脏矩形更新 SurfaceView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14593117/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com