0

我有一个 UIView 设置一个计时器,每次触发它都会在后台队列(priority)上生成一个 UIImage .userInitiated,当完成时(测量需要 1-2 毫秒,它会推送到主队列并更新 UIImageView 的图像。

这会产生平滑的动画效果(例如,如果定时器配置为每秒触发 30 次)。然而,触摸屏幕会减慢或完全关闭更新。我删除了对 touchesBegan、Moved、Ended 和任何 GestureRecognizers 的覆盖,以确保我没有做任何昂贵的事情。只需触摸屏幕(尤其是快速拖动)即可防止 UI 更新。

我看了这个并在谷歌上搜索了尽可能多的 SO 帖子,但我完全坚持这一点。

这是问题的再现。运行该应用程序,它将显示一个基本项目的精简渲染。从那里,您可以拖动/触摸屏幕并注意帧将减慢到爬行或完全停止。

Github 复制

4

0 回答 0