NSStoryboardSegue
Переход раскадровки указывает переход или отношение включения между двумя сценами в раскадровке, где сцена является контроллером представления или контроллером окна, и раскадровка является экземпляром NSStoryboard класс.
Переход раскадровки имеет процедурное понятие того, чтобы быть вызванным, известный в API, как выполняемом. Можно использовать в своих интересах рычаги в процесс производительности перехода путем переопределения segueWithIdentifier:source:destination:performHandler: метод класса и посредством NSSeguePerforming протокол.
Вы не создаете объекты перехода раскадровки непосредственно. Вместо этого система создает их по мере необходимости, поскольку вызываются переходы. Для выполнения кода во время инициализации и производительности перехода переопределите initWithIdentifier:source:destination: и perform методы.
Можно инициировать переход программно с performSegueWithIdentifier:sender: метод NSSeguePerforming протокол. Например, Вы могли бы сделать это для перехода от сцены в одном файле раскадровки к сцене в другом.
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.10 и позже.
-
sourceController sourceControllerСвойствоЗапускать/содержать контроллер представления или контроллер окна для перехода раскадровки. (только для чтения)
Объявление
Swift
var sourceController: AnyObject { get }Objective C
@property(readonly, strong) id sourceControllerОбсуждение
В Вашем подклассе перехода раскадровки можно читать, это свойство для получения запускать/содержать контроллер представления или контроллер окна для перехода.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.10 и позже.
-
Заканчиваться/содержать контроллер представления или контроллер окна для перехода раскадровки. (только для чтения)
Объявление
Swift
var destinationController: AnyObject { get }Objective C
@property(readonly, strong) id destinationControllerОбсуждение
В Вашем подклассе перехода раскадровки можно читать, это свойство для получения заканчиваться/содержать контроллер представления или контроллер окна для перехода. Если Вы переопределяете, это свойство важно
prepareForSegue:sender:методNSSeguePerformingпротокол, чтобы позволить Вам передать данные конфигурации заканчиваться/содержать контроллер.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.10 и позже.
-
идентификатор идентификаторСвойствоДополнительный, уникальный идентификатор для перехода раскадровки, что можно указать использование инспектора Идентификационных данных в Интерфейсном Разработчике. (только для чтения)
Объявление
Swift
var identifier: String? { get }Objective C
@property(readonly, copy) NSString *identifierОбсуждение
Если Вы переопределяете, Вы используете это свойство
prepareForSegue:sender:методNSSeguePerformingпротокол.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.10 и позже.
-
init (identifier:source:destination:performHandler:) + segueWithIdentifier:source:destination:performHandler:Когда переход выполняется, создает переход раскадровки и блок, используемый.
Объявление
Swift
convenience init(identifieridentifier: String, sourcesourceController: AnyObject, destinationdestinationController: AnyObject, performHandlerperformHandler: () -> Void)Objective C
+ (instancetype)segueWithIdentifier:(NSString *)identifiersource:(id)sourceControllerdestination:(id)destinationControllerperformHandler:(void (^)(void))performHandlerПараметры
identifierУникальный идентификатор для перехода раскадровки. Посмотрите
identifierсвойство.sourceControllerЗапускать/содержать контроллер представления или контроллер окна для перехода раскадровки.
destinationControllerЗаканчиваться/содержать контроллер представления или контроллер окна для перехода раскадровки.
performHandlerБлок кода, который Вы обеспечиваете, чтобы быть выполненными каждый раз системные вызовы
performметод.Возвращаемое значение
Инициализированный переход раскадровки и блок кода, готовый выполняться.
Обсуждение
Можно использовать этот метод для настройки перехода раскадровки вместо создания подкласса.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.10 и позже.
-
init (identifier:source:destination:) - initWithIdentifier:source:destination:Определяемый инициализаторОпределяемый инициализатор для перехода раскадровки.
Объявление
Swift
init(identifieridentifier: String, sourcesourceController: AnyObject, destinationdestinationController: AnyObject)Objective C
- (instancetype)initWithIdentifier:(NSString *)identifiersource:(id)sourceControllerdestination:(id)destinationControllerПараметры
identifierУникальный идентификатор для перехода раскадровки. Посмотрите
identifierсвойство.sourceControllerЗапускать/содержать контроллер представления или контроллер окна для перехода раскадровки.
destinationControllerЗаканчиваться/содержать контроллер представления или контроллер окна для перехода раскадровки.
Возвращаемое значение
Инициализированный переход раскадровки, готовый выполняться.
Обсуждение
Когда переход начинается, системные вызовы этот метод. Для выполнения кода во время инициализации перехода реализуйте переход раскадровки, разделяют на подклассы и переопределяют этот метод.
Каждый раз, когда этот метод вызывают, система тогда вызывает
performметод.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.10 и позже.
-
Выполняет визуальный переход от одного контроллера до другого.
Объявление
Swift
func perform()Objective C
- (void)performОбсуждение
Можно переопределить этот метод в Вашем
NSStoryboardSegueподкласс для выполнения пользовательской анимации между запускать/содержать контроллер, и заканчиваться/содержать контроллер для перехода раскадровки. Как правило, Вы использовали бы Базовую Анимацию для установки анимации от одного набора представлений к следующему. Для более сложных анимаций Вы могли бы взять изображение снимка двух иерархий представления и управлять изображениями вместо объектов представления.Независимо от того, как Вы выполняете анимацию, Вы ответственны за установку целевого контроллера представления o контроллер окна (и его содержавшие представления) в правильном месте так, чтобы это могло обработать события. Как правило, это влечет за собой призыв одного из методов представления
NSViewControllerкласс.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.10 и позже.
