cocoa – NSScrollView作为图层支持的视图bug的子视图?

前端之家收集整理的这篇文章主要介绍了cocoa – NSScrollView作为图层支持的视图bug的子视图?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
当我将NSScrollView作为图层支持视图的子视图时(例如通过从IB中选择NSTextView或NSTableView),我在滚动视图的文档视图中看到了奇怪的绘图行为.

为了说明,我在窗口中创建了一个带有NSTextView的简单项目.我写的唯一代码是打开窗口内容视图的图层支持

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification
{
    [[self.window contentView] setWantsLayer:YES];
}

这是我输入textview时的结果.红色下划线没有正确排列:

http://mowglii.com/random/screenshot.png

此外,当我调整textview的大小时,文本和下划线很多.当我使用tableview(在scrollview中)而不是textview时,我在调整大小时看到了相同的抖动.

知道发生了什么事吗?

解决方法

当嵌入在图层支持的视图中时,NSScrollView确实行为不端.

动画包含滚动视图的视图需要一些严肃的技巧.只有在需要设置动画后,才可以尝试启用图层背景.然后,您需要强制绘图,以便不以空图层结束.

通常情况下,你需要更深入地了解技巧.即:保持层关闭关闭.将视图绘制到图像中,在启用了图层背景的叠加视图中显示该图像.将该视图设置为最终状态的图像.然后删除叠加视图以显示下面的实际最终状态.

猜你在找的cocoa相关文章