Я использую NSPopover, и я помещаю NSViewController внутри, чтобы отображаться как пользовательский вид из NSStatusItem. Большинство контроллеров представлений отображаются правильно, за исключением NSButton с радиусом угла на них. Есть еще несколько белых утечек, где применяются закругленные углы. Отображая кнопки в реальном приложении, эта проблема не возникает.Угловой радиус NSButton и NSPopover
Я чувствую, что он должен что-то сделать с появлением NSPopover, которое я установил в «NSAppearanceNameAqua».
NSButtons находятся в NSView, которые отображаются в NSTableView и настроены на этот стиль.
self.createdButton.wantsLayer = true
self.createdButton.layer?.backgroundColor = Utils.blackColor().CGColor
self.createdButton.layer?.masksToBounds = true
self.createdButton.layer?.cornerRadius = 5
Верхнее изображение, когда фактическое приложение открыто. Нижнее изображение - это когда контроллер просмотра отображается в NSPповерсе.
Что вы имеете в виду, когда вы говорите «сверху изображение, когда фактическое приложение открыто» против «контроллер вида показывается в NSPopover»? Итак, приложение не открыто в нижнем изображении? – rocky
Я создаю NSStatusItem, который появляется в верхней строке меню. Когда вы нажимаете значок в строке меню, появляется NSPopover с контроллером представления, содержащим эти кнопки. – cmakthat
Одна вещь, которую я нашел, - это то, что вы добавляете свои кнопки программным образом в ContentViewController, а затем округляете их, они будут округлены правильно. Однако привязка одних и тех же кнопок/представлений от Interface Builder в Xib/Storyboard не будет применяться к правильному округлению, по крайней мере, это то, что я испытал. Может быть, ошибка в AppKit? – zic10