2017-05-03 12 views
0

にナビゲートするとの問題は、私は構造上の構造スウィフト - 私はしたい、ので、ルートコントローラ

NavigationController -> HomeViewController -> StoryBoardSegue (Id: SignUpViewController) -> SignUpViewController -> StoryBoardSegue (Id: SignupStep1ViewController) -> SignUpStep1ViewController -> StoryBoardSegue (Id: SignUpStep2ViewController) -> SignUpStep2ViewController 

以下でストーリーボードを持っているがログインしていないユーザーのために、私はこの時点でセグエチェーンを中止していますすぐに今の構造は、画面の各々において

Navigation Controller -> MainMenuViewController 

で、私は次のような方法

を使用して新規のViewControllerにユーザーをリダイレクトしていますため、ユーザは、ログインすると全く異なるナビゲーション構造
performSegue(withIdentifier: "SignInViewController", sender: self) 
performSegue(withIdentifier: "SignUpViewController", sender: self) 
performSegue(withIdentifier: "SignupStep1ViewController", sender: self) 
performSegue(withIdentifier: "SignUpStep2ViewController", sender: self) 

SignUpStep2ViewControllerという最後のセグのチェーンポイントに到達すると、この時点でセグが存在しないので、次のコードを使用して別のViewControllerにリダイレクトします。

これまで
let mainMenuViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "MainMenuViewController") 
present(mainMenuViewController, animated: true, completion: nil) 

ユーザーがログアウトをクリックしたときに何のセグエがMainMenuViewControllerとHomeViewControllerの間に存在していない、私は次のコードを試してみましたので、今MainMenuViewControllerで、私はHomeViewController

にユーザーをしたい私はperformSegueを使用することはできませんので、良いです

let homeViewController = self.storyboard?.instantiateViewController(withIdentifier: "HomeViewController") 
self.present(homeViewController!, animated:true, completion:nil) 

私は、コードを使用する場合の問題は、何らかの理由で、ナビゲーションメニューは、私は戻ってHomeViewControllerに行くのか、MainMenuControllerから、SignUpViewControllerに表示されないのですか?

答えて

0

私は参考のために、HomeViewControllerで、Iは、以前

作成方法を終了し、選択しMainMenuViewControllerからドラッグ+制御、次のコード

@IBAction func unwindToVC(segue: UIStoryboardSegue) { } 

そしてストーリーボードにして加え、unwindSegueを使用してこれを解きます

は、その後、次のコード

self.performSegue(withIdentifier: "unwindToHomeViewController", sender: self) 

を実行し、これは完璧に動作し、私にアンダーを助けた次の記事に感謝問題をTAND

https://www.andrewcbancroft.com/2015/12/18/working-with-unwind-segues-programmatically-in-swift/
http://ashishkakkad.com/2015/04/work-with-unwind-segue-in-swift-language-ios-8/

関連する問題