2
完全難倒。我已經看遍了所有,並實施了我能找到的每個解決方案。我似乎無法讓導航欄變得透明。導航控制器黑色時,試圖使透明
當試圖設置背景顏色時,我只是在頂部看到一個黑色條。就像我試圖設置背景圖像一樣。我嘗試了所有這些和所有的變化。
self.navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)
self.navigationController?.navigationBar.shadowImage = UIImage()
self.navigationController?.navigationBar.backgroundColor = UIColor.clear
我使用它 viewWillAppear中()和動畫滾動時。導航欄是透明的,然後當您滾動導航欄時,會獲得帶有灰色文本的白色背景。
func scrollViewDidScroll(_ scrollView: UIScrollView) {
self.navigationController?.navigationBar.barStyle = .default
let offset = self.tableView.contentOffset.y
if offset > 250.0 {
self.navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.darkGray]
self.navigationController?.navigationBar.topItem?.title = spot!.Name
self.navigationController?.navigationBar.isTranslucent = false
self.navigationController?.navigationBar.tintColor = UIColor.darkGray
self.navigationController?.isNavigationBarHidden = false
self.navigationController?.navigationBar.barTintColor = UIColor.white
}
else {
self.navigationController?.navigationBar.topItem?.title = nil
self.navigationController?.navigationBar.isTranslucent = true
self.navigationController?.isNavigationBarHidden = false
self.navigationController?.navigationBar.tintColor = UIColor.white
self.navigationController?.navigationBar.barTintColor = UIColor.white
self.navigationController?.navigationBar.shadowImage = UIImage()
}
}
我也試過背景顏色設置爲白色,並改變了阿爾法= 0,但這並不能工作。
任何幫助非常感謝。
這有助於,但我仍然不能得到它完全透明..我現在在頂部有一個完整的白色酒吧! – chuninator
我試過你的方法了,我爲我工作,檢查你的scrollview的y,看它是否在navbar下 – menq