我有许多层支持的视图包含在NSScrollview
and am 主要关注滚动性能. The documentView
和更高层是受层支持的,因此它们的子视图也是受层支持的。
以下是显示/渲染代码可以放置的三个自然位置:
- 覆盖
NSView.wantsUpdateLayer
返回 false (或者不执行任何操作,因为这是默认设置)并在 NSView 中进行绘图drawRect
method
- 覆盖
NSView.wantsUpdateLayer
返回 true 并在 NSView 中进行绘图updateLayer
method
- 请勿绘制
NSView
完全并在 CALayer 中执行所有绘图drawInContext
method
来自WWDC 2013 第 215 场据说 (2) 比 (1) 的性能更高,因为视图不需要为 drawRect 输出创建临时存储。首先,我没有 100% 清楚什么时候创建“后备存储”,什么时候不创建,其次如何比较(2)和(3)以及何时可以使用其中一个?
特别是,我必须将文本绘制到我的视图中。我将如何在 updateLayer 调用中执行此操作?绘制文本的唯一示例似乎需要掌握上下文 - 这在自然中是不可用的updateLayer
.
None
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)