0
シーケンスはtabBarController-> navigationController-> viewController-> viewControllerです 次のコードを2番目のviewControllerに書き込みました。 ユーザーが2番目のviewControllerに来ると、タブバーを非表示にしたいと思います。tabBar.isHiddenがviewWillAppearでリセットされない
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
self.tabBarController?.tabBar.isHidden = true
}
ユーザーが[キャンセル]ボタンをクリックすると、メインページに戻る必要があります。
@IBAction func cancelAction(_ sender: Any) {
// Depending on style of presentation (modal or push presentation), this view controller needs to be dismissed in two different ways.
self.navigationController?.popToRootViewController(animated: true)
}
最初のviewControllerに戻った後、再びタブバーを表示したいと思います。
override func viewWillAppear(_ animated: Bool) {
self.tabBarController?.tabBar.isHidden = false
}
実際、タブは表示されません。そしてそのページは突然一瞬の間震える。理由を知らない。
ありがとう!できます。しかし、なぜ私のコードが期待どおりに機能しないのですか? –
あなたは忘れてしまったかもしれません:super.viewWillAppear(animated)。あなたがそれを忘れてしまった場合、追跡するのが非常に厄介な問題につながる可能性があります。 –