如何更改搜索控制器中的 uitextfield 颜色?
Posted
技术标签:
【中文标题】如何更改搜索控制器中的 uitextfield 颜色?【英文标题】:how to change uitextfield color in searchcontroller? 【发布时间】:2017-12-14 13:08:46 【问题描述】:我在导航栏中嵌入了 SearchController 。如何将 UITextField 颜色更改为将搜索字符串保存为白色的颜色。?
【问题讨论】:
您想将文本字段背景更改为绿色并搜索字符串白色 【参考方案1】:这将帮助您实现您想要的。只需在此代码中应用您的颜色组合并查看。
if #available(ios 11.0, *)
let sc = UISearchController(searchResultsController: nil)
sc.delegate = self
let scb = sc.searchBar
scb.tintColor = UIColor.white
scb.barTintColor = UIColor.white
if let textfield = scb.value(forKey: "searchField") as? UITextField
//textfield.textColor = // Set text color
if let backgroundview = textfield.subviews.first
// Background color
backgroundview.backgroundColor = UIColor.white
// Rounded corner
backgroundview.layer.cornerRadius = 10;
backgroundview.clipsToBounds = true;
if let navigationbar = self.navigationController?.navigationBar
navigationbar.barTintColor = UIColor.blue
navigationItem.searchController = sc
navigationItem.hidesSearchBarWhenScrolling = false
结果:
【讨论】:
当我点击搜索时,它会使屏幕变得模糊(松散焦点),就像在动画中看到的那样。如何解决。 BarTintColor 会解决这个问题吗? 哦,我没有标记那个。给我一些时间。让我检查一下并提供您可行的解决方案。searchController.obscuresBackgroundDuringPresentation = false
设置此属性成功了。
您真的很棒 - 欢迎您使用建议的输入更新和改进此答案。 :)以上是关于如何更改搜索控制器中的 uitextfield 颜色?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Swift 中的 UITextField 下显示错误
SwiftUI - UITextField 中的状态更改导致 frameWidth 不受控制地增长并忽略边界/框架
键入时如何计算直播的UITextField字数(Swift)?