ナビゲーションバーのスタイリングにいくつか問題があります。私は2つのView Controllerを持っているとしましょう。ナビゲーションバーが以前のVCに戻ると変更されます
VC 1は、私はそうのように設定している白のテキストとオレンジ色のバーがあります。
func stylingStuffs(){
self.navigationController?.navigationBar.barTintColor = UIColor(red: 0.94, green: 0.38, blue: 0.24, alpha: 1)
self.navigationController?.navigationBar.backgroundColor = UIColor(red: 0.94, green: 0.38, blue: 0.24, alpha: 1)
self.navigationController?.navigationBar.tintColor = UIColor.white
self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName : UIColor.white]
self.navigationController?.navigationBar.isTranslucent = false
UIApplication.shared.statusBarStyle = .lightContent
}
VC 2は、透明ナビゲーションバーとそのためのコードがありました:
func stylingStuffs(){
navigationController?.setNavigationBarHidden(false, animated: true)
navigationController?.navigationBar.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
self.navigationController?.navigationBar.barTintColor = UIColor(red: 0.94, green: 0.38, blue: 0.24, alpha: 0)
self.navigationController?.navigationBar.backgroundColor = UIColor(red: 0.94, green: 0.38, blue: 0.24, alpha: 0)
navigationController?.navigationBar.shadowImage = UIImage()
navigationController?.navigationBar.isTranslucent = true
navigationController?.navigationBar.tintColor = UIColor.white
self.navigationController?.navigationBar.barStyle = .default
UIApplication.shared.statusBarStyle = .lightContent
}
私はVC1-> VC2からナビゲートします。すべて正常に動作します.VC2-> VC1からナビゲートすると、VC1のNavbarはステータスバーと同様に白/透明になります。
これを修正するにはどうしたらいいですか、VC1に戻ったときにスタイルをリセットすると思いますか?
ありがとうございました!
あなたが混乱しているために、ナビゲーションバーのスタイルをリセットする必要がある1つのナビゲーションコントローラの一部です。両方のビューコントローラがある1つのナビゲーションコントローラの一部です。 – rmaddy
はい、vc1に戻るときにスタイルをリセットする必要があります。 – Kingalione