gpt4 book ai didi

objective-c - 是-[NSView setNeedsDisplay :] a synchronous call?

转载 作者:行者123 更新时间:2023-12-03 16:50:04 25 4
gpt4 key购买 nike

我在 Mac OS X 应用程序中有一个可以自行绘制的 NSView。当我准备好发生这种情况时,我通过电话请求:

[self.imageRenderedView setNeedsDisplay:YES];

我的问题是,这个调用会阻塞吗?也就是说,它是同步的吗?我可以假设在执行后续语句时绘图已经发生吗?这个假设似乎对我有用,但我对此感到有点不安全。

最佳答案

setNeedsDisplay: 调用仅通过设置标记 View 需要显示 View 对象中的标志。因此它返回得非常快,但是当该方法返回时绘图尚未发生。

来自documentation :

Whenever the data or state used for drawing a view object changes, the view should be sent a setNeedsDisplay: message. NSView objects marked as needing display are automatically redisplayed on each pass through the application’s event loop. (View objects that need to redisplay before the event loop comes around can of course immediately be sent the appropriate display... method.)

关于objective-c - 是-[NSView setNeedsDisplay :] a synchronous call?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18047104/

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