私はタブバーコントローラを持っており、ホームビューコントローラにはナビゲーションコントローラがあります。タブバーをクリックしたときに現在のナビゲーションコントローラを閉じる
-tabバーコントローラ
- HomeVC
--- VC1ナビゲーションプッシュ - > VC1のナビゲーションバーでVC2
は隠さなく、VC2の内側に隠されていません。そして私はそれをviewwillappearとviewwilldisが消えるように制御します。
override func viewWillAppear(_ animated: Bool) {
navigationController?.navigationBar.barStyle = .blackTranslucent
}
override func viewWillDisappear(_ animated: Bool) {
navigationController?.navigationBar.isHidden = false
}
しかし、スワイプすることなく、VC1に戻って、私はタブバーhomeVCのアイコンをクリックすると、ナビゲーションバーが非表示になります意味。私は現在のviewcontrollerを破棄してポップし、VC1に戻したいと思う。
タブが変わったときにタブのトップビューコントローラーに戻りたいのですか? – Jaydeep
なぜ、あなたは 'viewDidAppear()'でvc2からnavigaitonBarを隠し、vc1 'viewDidAppear()'で非表示にして、これを試してみてください。 –
VC1では、viewWillAppearでnavigationBar.isHidden = falseを設定しました。 – Alper