如何解决每秒重绘 NSView 60 次的最佳方法?
我的 OS X 应用程序中有一个视图,我需要每秒完全重绘(理想情况下)60 次。我目前在 NSView 绘图函数中使用 Core Graphics 进行绘图,如下所示:
ComponentDidMount()
然后,在视图控制器 viewDidAppear() 中,我安排了一个计时器来强制视图每秒重绘(大约)60 次,这在工作时肯定是实现预期结果的糟糕方法。
override func draw(_ dirtyRect: NSRect) {
super.draw(dirtyRect)
// Drawing code here.
let context = NSGraphicsContext.current!.cgContext
// Core Graphics drawing calls using context
}
有没有更好的方法来做到这一点(我确定有)?从我(明显缺乏)对 NSView 及其绘图模型的了解来看,NSView 似乎并没有像这样不断重绘。
我对使用 NSView 并不特别,但我非常喜欢使用 Core Graphics(Metal 不是一种选择,因为我已经大量使用它来处理 GPGPU 的东西)。
非常感谢任何建议!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。