【发布时间】:2020-03-12 13:58:07
【问题描述】:
在我的AppDelegate 中,我将导航栏配置如下:
func setupNavBar() {
let barAppearance = UINavigationBar.appearance()
barAppearance.titleTextAttributes = [NSAttributedString.Key.foregroundColor: appRed]
barAppearance.setBackgroundImage(UIImage(), for: UIBarMetrics.default)
barAppearance.shadowImage = UIImage()
barAppearance.isTranslucent = true
}
这很好用——直到我想从我的UIViewControllers 中显示一个UIImagePickerController——图像超出了栏,因为它是半透明的——我需要能够暂时将导航栏设置为白色,然后制作当拾取器控制器被拆除时,它再次透亮:
我尝试通过在代码中添加最后两行来解决此问题:
let pickerController = UIImagePickerController()
pickerController.delegate = self
pickerController.allowsEditing = false
pickerController.mediaTypes = ["public.image"]
pickerController.sourceType = .savedPhotosAlbum
self.navigationController?.navigationBar.backgroundColor = .white
self.navigationController?.navigationBar.isTranslucent = false
self.present(pickerController, animated: true, completion: nil)
这似乎不起作用。
【问题讨论】:
标签: ios swift uinavigationcontroller uinavigationbar uiimagepickercontroller