2014-02-14 43 views
3

我有一个NSButton兄弟在NSImageView的顶部。当NSImageView上显示NSButton渲染问题

每当我点击窗口,都有一些渲染问题。它看起来像这样:

enter image description here

正如你所看到的,白色的边缘问题。
奇怪的是,如果我覆盖drawRect:,这个问题甚至会持续存在。
什么都没有得到渲染,但每当我点击它,那些白色的边缘出现。

此外,当背景图像发生变化时,按钮会重新绘制,边缘消失。

任何想法可能会导致这种情况?


编辑

我发现,这其实与NSView
每一个实例发生,它实际上清除缓冲区的一部分(你可以看到桌面壁纸):

enter image description here


编辑2

我也刚刚发现,如果我对Windows内容视图进行回送,这种情况不会发生。

+0

检查它,如果它可以解决你的问题http://www.cocoawithlove.com/2010/11/back-to-mac-12-features-from-ios-i-like.html – ChenSmile

+0

@Immi Hm。 。他们中哪一个具体?我看了他们所有人,我没有看到你指的是哪一个。 – NSAddict

+0

到目前为止你已经尝试过...向我们展示你的代码片段 – ChenSmile

回答

0

那么,这个问题是不可能的任何人回答。

我的窗户有一个自定义contentView,它只是绘制一个圆角的视图。
而不是使用self.bounds,我用dirtyRect绘制背景。

因此,当contentView想重新绘制更新的控件的背景时,那些圆角被切掉。