2017-10-02 12 views
1

私はアプリを構築しようとしていました。多くのページを持ち、すべてのページにはHomeというナビゲーション項目があります。私はどのようにiosでアプリケーションの開始ページに行くことができます

クリックするとホームページ、平均の開始ページに移動します。私は、instantiateViewControllerしたくありません。私は拳の初期化のページが来る欲しい。私はこれをどうやってできるのか。私はページを却下したくない。それは多くの行くためにクリックし、ホームページに

を取ることですので、私はこの

self.dismiss(animated: true, completion: {}); 
self.navigationController?.popViewController(animated: true); 

initial view controller

+0

NavigationControllerを使用していますか? – CZ54

+0

私はrootviewコントローラなしですべてのページに対してNavControllerを持っています –

+0

これはできません。 NavigationControllerの最初のコントローラーがルートです。だからちょうどpopToRootControllerはジョブ – CZ54

答えて

2
self.navigationController?.popToRootViewController(animated: true) 

ポップルートビューコントローラを除く、スタック上のすべてのビューコントローラと表示を更新してみました。

2

Swift 3+:次のコード行を使用してアプリを再起動できます。

func moveToRootViewController(){ 
    let storyboard = UIStoryboard(name: "Main", bundle: nil) 
    let window = UIApplication.shared.keyWindow 
    window?.rootViewController = storyboard.instantiateInitialViewController() 
} 
0

あなたはあなたの目的のためにUINavigationController方法popToRootViewController(animated:)を使用することができます。ナビゲーションコントローラのルートとしてホームを設定します。必要なView Controllerは、同じNavigation Controllerを使用してプッシュできます。任意のページ内でホームボタンを押すたびに、すべてのView Controllerがポップされ、上記の方法でRoot View Controllerが表示されます。 あなたは

self.navigationController?.popToRootViewController(animated: true) 

コールごとpageofアプリでホームボタンをクリックしたときに、このメソッドとして使用することができます。ルートビューコントローラ以外 スタック上のすべてのビューコントローラをポップし、表示を更新します:)

popToRootViewController(アニメーション:アップルのドキュメントから

関連する問題