迅捷的黑色背景出现在导航栏的后面

时间:2018-10-21 02:09:12

标签: swift uinavigationcontroller uinavigationbar segue uistoryboardsegue

!注意:我还看到过其他一些问题,报告出现黑条,但是对于我来说,这不是一个重复的问题(如果我错了,请纠正我),当我进行推压操作时,会出现类似黑视图的情况被执行。黑条问题的解决方案中没有一个对我有用(差异:对我来说有一个黑视图)。 我在情节提要中使用了标准的“显示” segue。以下是我的第一个viewDidLoad的{​​{1}}内部的代码(此vc执行到第二个vc的segue):

UIViewController

这是我第二个vc的if #available(iOS 11.0, *) { navigationController!.navigationBar.prefersLargeTitles = false } mapView.delegate = self locationManager.delegate = self locationManager.desiredAccuracy = kCLLocationAccuracyBest locationManager.requestWhenInUseAuthorization() locationManager.startUpdatingLocation() 中的代码(segue导致了该vc):

viewDidLoad

它们都使用相同的if #available(iOS 11.0, *) { navigationController!.navigationBar.prefersLargeTitles = true } 。对于我的第一个vc,我想要navBar navigationController,对于我的第二个vc,我想要navBar至preferresLargeTitles = false,这就是我在preferresLargeTitles = true方法中所做的。关于viewDidLoadMapKit的5行代码不会引起这种效果,但是我不知道为什么会出现这种黑视图,所以我留下了这些代码行。执行segue时,如何删除显示在navBar后面的黑色视图? (当搜索结束后,黑色消失了)(右上角的黑色困扰着我)

2 个答案:

答案 0 :(得分:1)

Elasticsearch exception [type=strict_dynamic_mapping_exception, reason=mapping set to strict, dynamic introduction of [_class] within [_doc] is not allowed] 换为.backgroundColornavigationBar.scrollEdgeAppearance)可以为我解决这个问题。

示例:

UINavigatioBarAppearance

答案 1 :(得分:0)

.backgroundColor 更改 navigationController.view 为我解决了这个问题。

override func viewDidLoad() {
    super.viewDidLoad()
    navigationController.view.backgroundColor = .systemBackground
}