gpt4 book ai didi

ios - 在iOS 13中使用UISearchController时,状态栏在iOS中变为白色

转载 作者:行者123 更新时间:2023-12-01 16:21:40 26 4
gpt4 key购买 nike

这里有一个奇怪的情况。当我使用UISearchController时,我首先得到了这种外观(如预期的那样)

enter image description here

但是,当您在TextField中选择开始搜索时,状态栏将变为完全白色(如果处于黑暗模式则为黑色)

enter image description here

这从未发生过。 UISearchController中是否有一些设置可以告诉它在使用搜索栏时使用某种状态栏样式?

我希望它保持选择TextField之前的颜色

---编辑---

override func viewDidLoad() {
super.viewDidLoad()

self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItem.Style.plain, target: nil, action: nil)

frc = getFRC()
frc.delegate = self

self.resultsSearchController.delegate = self
let searchBar = self.resultsSearchController.searchBar

self.resultsSearchController.searchResultsUpdater = self
self.resultsSearchController.obscuresBackgroundDuringPresentation = false
self.resultsSearchController.extendedLayoutIncludesOpaqueBars = true

searchBar.sizeToFit()
self.tableView.tableHeaderView = searchBar
searchBar.placeholder = "Catalog Search"
searchBar.barTintColor = UIColor.darkAqua
searchBar.searchTextField.backgroundColor = UIColor.white

self.definesPresentationContext = true

searchBarHeight = searchBar.frame.height

do {
try frc.performFetch()
} catch {
error.tryError(tryMessage: "Perform initial fetch", loc: self)
}

if tutorials.catalog {
createTutorialTab(segueNameOnOpen: "catalogTutorial")
}
}

最佳答案

您可以使用此功能更改状态栏的颜色,这是一种处理状态栏的技巧;)。如果您在整个应用程序中使用一个主题状态栏,请从AppDelegate中的didFinishLaunching调用此函数。

func changeStatusBar(backgroundColor: UIColor, contentColor:UIColor) {

if let statusBar = UIApplication.shared.value(forKey: "statusBar") as? UIView {
statusBar.backgroundColor = backgroundColor
statusBar.setValue(contentColor, forKey: "foregroundColor")
}
}

关于ios - 在iOS 13中使用UISearchController时,状态栏在iOS中变为白色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58311729/

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