[英]How to remove navigation bar colour clear in swift4?
您可以在導航欄上透明的viewWillAppear
,並移除透明度viewWillDisappear
如下
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.isTranslucent = true
}
override func viewWillDisappear(_ animated: Bool) {
super.viewWillDisappear(animated)
self.navigationController?.navigationBar.setBackgroundImage(nil, for: .default)
self.navigationController?.navigationBar.shadowImage = nil
self.navigationController?.navigationBar.isTranslucent = false
}
背景圖像和后退按鈕將可見
最好您必須避開導航欄。 將導航欄隱藏在導航控制器中,並將用戶自定義視圖隱藏在視圖控制器中,以避免出現此問題。
Swift 5::<\/strong>在 AppDelegate 的 didFinishLaunchingWithOptions 函數中調用下面的方法可以解決問題(這將應用於您的所有導航欄,但不要忘記切換您的視圖控制器)
let navBarAppearance = UINavigationBarAppearance()
navBarAppearance.configureWithTransparentBackground()
navigationController?.navigationBar.standardAppearance = navBarAppearance
navigationController?.navigationBar.scrollEdgeAppearance = navBarAppearance
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.