Настройка, которую я опишу, предназначена для NSTabView
, который будет прикреплен к верхней, левой и правой сторонам прокрутки. Обратите внимание, что NSTabView
можно заменить любым другим NSView
, настройки такие же.
Начиная с помещения прокрутки в xib / storyboard, у вас будет NSScrollView -> NSClipView -> NSView (document view)
. Ограничьте NSScrollView к краям окна. Бросьте свой NSTabView
на экземпляр NSView
. Добавьте ограничения так, чтобы ваши ограничения NSTabView
edge равнялись NSView
и определяли ограничение высоты явно или неявно с другим содержимым внутри представления вкладки, которое его определяет.
Лично мне нравится изменять макет экземпляра NSView
(представление документа), чтобы использовать ограничения, по умолчанию он использует маски автоматического изменения размера, и это затрудняет синхронизацию c с NSTabView. Мы хотим, чтобы вид документа был закреплен сверху, слева и справа от вида прокрутки. Размер этого вида определяет прокручиваемую область, поэтому мы хотим, чтобы он был того же размера, что и NSTabView, поэтому высота представления с вкладками будет определять прокручиваемую область.
Чтобы изменить это, выберите вид документа и в Инспекторе размеров мы хотим изменить тип «Макет» на «Automati c».
Наконец, добавьте ограничения к top, left и right, и вам должно быть хорошо go.
Если вы хотите, чтобы представление прокрутки начиналось сверху, а не снизу, вы должны создать подкласс представления документа и переопределить isFlipped
:
class FlippedView: NSView {
override var isFlipped: Bool { true }
}