Как исключить определенные виды AppKit из восстанавливаемого NSWindow? - PullRequest
1 голос
/ 16 апреля 2020

NS Windows можно сделать restorable, чтобы их конфигурация сохранялась между запусками приложений.

https://developer.apple.com/documentation/appkit/nswindow/1526255-restorable

Windows должен быть сохранен между циклами запуска, чтобы поддерживать непрерывность интерфейса для пользователя. Во время последующих циклов запуска система пытается воссоздать окно и восстановить его конфигурацию в сохраненном состоянии. Данные конфигурации обновляются по мере необходимости и автоматически сохраняются системой.

В новом проекте macOS NSWindow на раскадровке по умолчанию restorable:

Restorable checkbox in Xcode


Моя проблема возникает при встраивании NSTabViewController в NSWindow.

NSTabViewController

NSTabView наследуется restorable состояние окна автоматически, без добавления кода.

Это позволяет выбранной вкладке сохраняться между запусками приложения. Я не хочу этого Я хочу, чтобы он всегда был по умолчанию с индексом 0. Если выбранная вкладка восстанавливается, попытка программного выбора вкладки в viewDidLoad приводит к неожиданным результатам.


Как заставить определенные элементы интерфейса AppKit быть исключен из восстановления состояния NSWindow?

Я хочу, чтобы представление вкладок не восстанавливалось.

Но я хотел бы сохранить другие восстанавливаемые преимущества, такие как восстановление ранее размер окна.

Как можно исключить отдельные представления из восстановления состояния NSWindow?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...