私はこれに対する答えを見つけるのが最も困難な時です。スウィフトでxibビューからストーリーボードviewcontrollerに繋ぐ方法3
私はビューコントローラ内のスクロールビュー内にあるxibビューを持っています。 xibにはアクションがあるボタンがあり、私はストーリーボードにあるビューコントローラーにセグをする必要があります。私はカスタムセグを使うこともできるようにしたいと思っています。
これまでのところ、私はストーリーボードからViewControllerをインスタンス化して、それにセグをすることができます。しかし、私はそのコントローラーを提示する方法を知らない。任意の助け
おかげで...
UPDATE:
これは私がセグエを実行するために使用しているコードです。親のViewControllerで
:
static var referenceVC: UIViewController?
override func viewDidLoad() {
super.viewDidLoad()
print("viewdidload")
LevelSelectViewController.referenceVC = self
setupScrollView()
}
コードXIBビューファイルで
let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "sightWordController")
let parent = LevelSelectViewController.referenceVC!
let segue = InFromRightCustomSegue(identifier: "test", source: parent, destination: vc)
segue.perform()
小文字は通常、ストーリーボードの使用のみに限定されています。おそらく、あなたはビューを追加しなければならないでしょう(それは、あなたがペン先からロードするためにビューのクラス全体を何らかの方法でストーリーボードに設定することができます)。さもなければ、それは理由のために 'UIStoryboardSegue'sと呼ばれます。 – TheCodingArt
コードで割り当てることができるカスタムセグを使用する場合は、私が信じて実行するVCが必要です。つまり、レスポンダチェーンを上って、それを実行する関連VCを見つけることができます。一般的には、カスタムトランジションとデリゲートコールバックのようなものが必要です。コードを複雑にしてセグを維持する理由はまったくありません。 – TheCodingArt
私はちょうどそれを働かせました。私の最大の問題は、私はsegueを呼び出すことができるように、親viewcontrollerへの参照を取得していた。私がリファレンスを取得する方法はちょっとしたハックですが、xibファイル内で使用できる親ビューコントローラで静的リファレンス変数を作成しました。参照を取得するより良い方法はありますか?私は自分のコードを表示するために質問を更新します。 – Discoveringmypath