2014-02-14 108 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想重新繪製更新的控件的背景時,那些圓角被切掉。