我正在尝试使searchBar
的角变圆。我尝试了多种使用layer.cornerRadius
,maskToBound = true
的方法。我正在以编程方式将searchBar
加载到navigationBar
中。我已经尝试了很多关于堆栈溢出的解决方案,但是没有任何效果。
func setupsearchbar()
{
// Setup the Search Controller
searchcontroller.searchResultsUpdater = self as? UISearchResultsUpdating
searchcontroller.hidesNavigationBarDuringPresentation = false
searchcontroller.searchBar.placeholder = "Search"
self.navigationItem.titleView = searchcontroller.searchBar
self.searchcontroller.searchBar.layer.cornerRadius = 30
self.searchcontroller.searchBar.layer.masksToBounds = true
definesPresentationContext = true
searchcontroller.searchBar.delegate = self
}
请问有什么我可以做的。
答案 0 :(得分:3)
使用以下代码在我当前的项目中对我来说效果很好。
if let textfield = searchController.searchBar.value(forKey: "searchField") as? UITextField {
textfield.textColor = UIColor.blue
if let backgroundview = textfield.subviews.first {
// Background color
backgroundview.backgroundColor = UIColor.white
// Rounded corner
backgroundview.layer.cornerRadius = 10;
backgroundview.clipsToBounds = true;
}
}
我希望这会对您有所帮助。