2016-11-24 4 views

ответ

0

Для прозрачной Titlebar:
Есть несколько способов для достижения этой цели.

  1. подход (простой): Установить окно, чтобы быть текстурированной window. Он получит серый градиент в качестве фона, так как исчезает titleBar. Затем вы можете установить backgroundColor (например, от windowContoller) до вашего предпочтительного цвета.

    self.window?.backgroundColor = NSColor.darkGray 
    
  2. подход (Более гибкий): Вы можете хотеть иметь немного больше гибкости. Чтобы точно воспроизвести дизайн Twitters, первый подход не сработает. Для того, чтобы строка заголовка прозрачна по телефону

    self.window?.titlebarAppearsTransparent = true 
    

    Затем вы должны установить окно, чтобы иметь полное представление контента размера. Это заставляет окно contentView начать прямо в окнах frame (0, 0). Вы должны следить за этим, так как ваши взгляды могут появиться под номером titleBar. Установите window.contentLayoutGuide.topAnchor как минимальное пространство между содержимым вашего окна и верхней частью представления. Вы получите дополнительную информацию об этом с этого года Crafting Modern Cocoa Apps WWDC сессия.

Для более введенных кнопок:
Так что теперь у вас есть прозрачная панель заголовка. Чтобы получить эффект кнопки, вам нужно добавить панель инструментов в окно. Поскольку вы не хотите иметь какие-либо предметы там, вы можете удалить их все. В коде нужно просто установить

self.window?.titleVisibility = .hidden 

и кнопки будут выровнены с невидимой панели инструментов. Вы можете улучшить внешний вид, отключив разделитель панели инструментов.

Смежные вопросы