导航项中的搜索控制器显示黑条
Search Controller in navigation item show black bar
您好,我已经使用
设置了搜索控制器
private func setupSearchbar() {
searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.obscuresBackgroundDuringPresentation = false
searchController.searchBar.placeholder = "Search Contacts"
self.navigationItem.searchController = searchController
self.definesPresentationContext = true
}
在我添加这段代码之前一切正常
UINavigationBar.appearance().isOpaque = true
UINavigationBar.appearance().isTranslucent = false
UINavigationBar.appearance().barTintColor = UIColor(named: "PrimaryDark")
UINavigationBar.appearance().tintColor = UIColor.white
UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.font:Constants.AppTheme.Fonts.font(type: .FONT_BOLD, size: 22) ,NSAttributedString.Key.foregroundColor:UIColor.white]
UINavigationBar.appearance().largeTitleTextAttributes = [NSAttributedString.Key.font:Constants.AppTheme.Fonts.font(type: .FONT_BOLD, size: 34) ,NSAttributedString.Key.foregroundColor:UIColor.white]
现在当我点击搜索栏时会出现大底黑条
如何解决这个问题?
查看调试
删除这个
UINavigationBar.appearance().isOpaque = true
UINavigationBar.appearance().isTranslucent = false
好的,我可以解决这个问题。我正在分享这个,所以这可能对其他面临同样问题的人有所帮助。
解决这个问题。在视图中会出现我已将 self.extendedLayoutIncludesOpaqueBars
设置为 true
的方法
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.extendedLayoutIncludesOpaqueBars = true
}
希望对某人有所帮助:)
这是输出
您好,我已经使用
设置了搜索控制器private func setupSearchbar() {
searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.obscuresBackgroundDuringPresentation = false
searchController.searchBar.placeholder = "Search Contacts"
self.navigationItem.searchController = searchController
self.definesPresentationContext = true
}
在我添加这段代码之前一切正常
UINavigationBar.appearance().isOpaque = true
UINavigationBar.appearance().isTranslucent = false
UINavigationBar.appearance().barTintColor = UIColor(named: "PrimaryDark")
UINavigationBar.appearance().tintColor = UIColor.white
UINavigationBar.appearance().titleTextAttributes = [NSAttributedString.Key.font:Constants.AppTheme.Fonts.font(type: .FONT_BOLD, size: 22) ,NSAttributedString.Key.foregroundColor:UIColor.white]
UINavigationBar.appearance().largeTitleTextAttributes = [NSAttributedString.Key.font:Constants.AppTheme.Fonts.font(type: .FONT_BOLD, size: 34) ,NSAttributedString.Key.foregroundColor:UIColor.white]
现在当我点击搜索栏时会出现大底黑条
如何解决这个问题?
查看调试
删除这个
UINavigationBar.appearance().isOpaque = true
UINavigationBar.appearance().isTranslucent = false
好的,我可以解决这个问题。我正在分享这个,所以这可能对其他面临同样问题的人有所帮助。
解决这个问题。在视图中会出现我已将 self.extendedLayoutIncludesOpaqueBars
设置为 true
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
self.extendedLayoutIncludesOpaqueBars = true
}
希望对某人有所帮助:)
这是输出