NSWindowRestoration
NSWindowRestoration протокол определяет метод, который классы восстановления должны реализовать для обработки воссоздания окон. Во время запуска объект приложения получает класс восстановления и использует restoreWindowWithIdentifier:state:completionHandler: метод для получения нового окна, тип которого соответствует тип, сохраненный ранее. Классы, принимающие этот протокол, могут использовать предоставленную информацию, чтобы создать (или получить ссылку на) окно в новом приложении. Как часть создания окна, класс должен также создать любые связанные объекты, такие как контроллеры окна, обычно используемые для управления окном.
Наследование
Не применимый
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.7 и позже.
-
restoreWindowWithIdentifier (_: state:completionHandler:) + restoreWindowWithIdentifier:state:completionHandler:ТребуемыйПросит класс обеспечивать новое окно для указанного идентификатора. (требуемый)
Объявление
Параметры
identifierУникальная интерфейсная строка идентификатора элемента, ранее связанная с окном. Используйте эту строку для определения который окно создать.
stateОбъект кодера, содержащий информацию о статусе окна. Этот объект кодера содержит объединенное восстановимое состояние окна, которое может включать состояние окна, его делегата, контроллера окна и объекта документа. Можно использовать это состояние для определения который окно создать.
completionHandlerБлочный объект выполниться с результатами создания окна. Вы должны выполнить этот блок в некоторый момент, но можете сделать так после возвратов метода в случае необходимости. Этот блок берет следующие параметры:
Окно, создававшееся или
nilесли не могло бы быть создано окно.Ошибочный объект, если окно не было распознано или не могло бы быть создано по любой причине; иначе, указать
nil.
Обсуждение
Во время запуска объект приложения использует этот метод для воссоздания окна, сохраненного во время предыдущего выполнения приложения. Ваша реализация этого метода может использовать
identifierстрока и данные вstateобъект кодера определить тип окна и связанных объектов создать. Только необходимо создать окно. Вы не должны восстанавливать конфигурацию окна с помощью предоставленного состояния. AppKit делает это для Вас при выполнении обработчика завершения с допустимым окном.Для окон, которые распознает Ваш класс восстановления, создайте (или получите), объект окна и выполняет обработчик завершения, передавая окно ему. Если Ваш класс восстановления не распознает окно, или распознает его, но не может воссоздать его по любой причине, передать ошибочный объект обработчику завершения вместо этого.
Если Вы планируете вызвать
completionHandlerпосле этого метода возвраты необходимо скопировать Блок, возражают себе и выпускают его, когда Вы сделаны с ним. Например, можно скопировать блок и представить его очереди для выполнения, после которого можно выпустить блок.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.7 и позже.
