在我的应用程序中的一个UIViews中,似乎在-drawRect:
完成之前有一个延迟,然后才能在屏幕上显示内容。
在完成-drawRect:
中的绘图和更新后的视图显示之间是否会发生某些事情?
答案 0 :(得分:1)
UIView的drawRect:
方法会自动调用drawLayer:inContext:
方法。一旦发生这种情况,在drawRect:
中执行的绘制操作将呈现给图像上下文。然后,视图层将其内容设置为来自上下文的此渲染图像。
drawRect:
完成后你怎么知道延迟是?我建议对其进行分析以确定这是滞后的来源。未经优化的绘图肯定会导致延迟,但不要过早优化。
答案 1 :(得分:0)
在操作周期结束时收集并完成所有图纸更新。因此,如果您注意到延迟,则在渲染绘图更改之前还有其他过程要完成。此外,绘图是一个昂贵的过程。