2016-09-28 7 views
0

私は3つのビューコントローラを持っています。 2つはタブバーコントローラに接続していますが、ユーザーがタブ付きビューの2番目のビューコントローラでセルを選択したときにアクセスしたいと思っています。タブバーコントローラから分岐しますか?

ユーザーが3番目の「詳細」ページで「戻る」を押すと、2番目のビューに戻ることができます。

これを行うには、ボタンを追加して2番目のVCにセグリングするだけで、タブバーは消えます。私は私のviewDidAppearでタブバーを再表示しようとしましたが、タブバーコントローラーがオフになっていると推測されます。

私は「didHitBack」のように、私は戻ってタブバーコントローラへのセグエを作成しています第三ビューの私の「戻る」ボタンにあった変数を作成してみました、そして「didHitBack」がtrueの場合、私は

行います
_ self.tabBarController?.selectedIndex = 1 

2番目のページに移動しますが、最初のビューが読み込まれて2番目のページが悪いようになります。

「didHitBack」を実行し、タブバーの初期表示コントローラーを2番目またはそれ以上のものに設定する方法があるかもしれないと思っていたかもしれませんが、すべてが間違っているようです。

これを行うには「適切な」方法がありますか?

私はVC1とVC2がTab Bar Controllerに接続されているので、私はVC2にtableviewを持っています。didSelectRowではVC3に行きます。私はタブ付きビューコントローラの一部になりたくありません私がVC3に戻ったとき、私はVC2に戻りたいと思う。

答えて

1

あなたはナビゲーションスタックを構築したい場合は、だからあなたのタブバーがVC1とNavVCにフックアップされるだろうUINavigationController

であなたのビューコントローラを埋め込む必要があります。 NavVCのルートビューコントローラはVC2です。

これで、ナビゲーションコントローラを使用して新しいView Controllerをスタックにプッシュするか(またはView Controllerをポップして戻ることができます)、すべてtabBarの境界内にあります。

+0

完璧!私は決してそれを理解していないでしょう。ありがとう。 – Noowoo

関連する問題