0
class CustomSegue: UIStoryboardSegue {
override init(identifier: String?, source: UIViewController, destination: UIViewController) {
super.init(identifier: identifier, source: source, destination: destination)
}
override func perform() {
self.source.navigationController?.pushViewController(self.destination, animated: true)
}
}
上記のコードでは、segueの動作をオーバーライドしています。 種類がの場合にのみ、pushViewController
を使用する必要があります。その他のタイプの場合はを表示(例:プッシュ)してください。UIStoryboardSegueサブクラスの識別セグの種類
サブクラスperform()
では、どのようにセグのKind
が見つかりますか?ストーリーボードで
override func perform() {
if kind==Push {
self.source.navigationController?.pushViewController(self.destination, animated: true)
} else {
super.perform()
}
}
しかし、コードでperform()では、カスタム動作をどのように知っていますか?そのショー(例:プッシュ) – andyPaul
あなたは演技から種類を得ることができません。コードではなく、ストーリーボードで異なるセグを作成する必要があります。プッシュ・トランジションを持つカスタム・セグのような1つのセグは、デフォルト・セグでなければなりません。 – Manoj