gpt4 book ai didi

iOS 11 搜索栏动画错误

转载 作者:行者123 更新时间:2023-12-01 23:23:59 25 4
gpt4 key购买 nike

我有一个附加到具有自定义搜索栏样式(颜色)的导航项的搜索 Controller 。这是代码:

    searchController = UISearchController(searchResultsController: nil)
searchController.searchResultsUpdater = self
searchController.hidesNavigationBarDuringPresentation = false
searchController.dimsBackgroundDuringPresentation = false

let bar = searchController.searchBar
bar.placeholder = "Search songs"
bar.backgroundImage = .transparentPixel // transparent UIImage of size 1x1
bar.backgroundColor = UIColor(red: 0.02, green: 0.04, blue: 0.06, alpha: 1)
bar.tintColor = .white
bar.barTintColor = UIColor(red: 0.02, green: 0.04, blue: 0.06, alpha: 1)
bar.isTranslucent = false
bar.barStyle = .default
bar.showsCancelButton = true

definesPresentationContext = true

然后我将其添加到 Controller :

    if #available(iOS 11.0, *) {
controller.navigationItem.searchController = searchController
controller.navigationItem.hidesSearchBarWhenScrolling = false
} else {
// Fallback on earlier versions
tableView.tableHeaderView = searchController.searchBar
}

当我在动画期间导航到该 Controller 一小段时间时,搜索栏显示白色而不是我设置的颜色。不确定这些是默认样式还是只是一种白色背景颜色。这是视频:

enter image description here

在调试 View 层次结构时,我发现了白色背景,不确定它是否与问题有关:

enter image description here enter image description here

<小时/>

更新: Apple 官方搜索示例代码(可以找到 here )也有类似的问题。此外,在插入新 Controller 的动画时,它会在搜索栏下方显示黑色区域。我已将窗口的背景颜色更改为红色,并看到红色:

enter image description here

就我而言,我没有带有白色背景的窗口或 View 。了解是否有人遇到此问题以及如何解决它会很有趣。

最佳答案

我通过删除背景图像设置修复了相同的错误

navigationController?.navigationBar.setBackgroundImage(UIImage(), for: .default)

关于iOS 11 搜索栏动画错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49220327/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com