如何在Swift3中设置UISearchBar的边框底部
问题描述:
我想指定UISearchBar的底部边框颜色。我已经看到了很多答案,可以帮助摆脱边框,或者将边框颜色设置为整体,但我只是想为底部边框设置边框颜色。这里是我的代码:如何在Swift3中设置UISearchBar的边框底部
searchController.searchBar.layer.borderWidth = 1 searchController.searchBar.layer.borderColor = UIColor.white.cgColor
有没有一种方法来设置只是底部边框边框颜色?
答
如果使用低于3(< 3.0)迅速版本,那么这下面的代码应该工作 -
let border = CALayer()
let width = CGFloat(2.0)
border.borderColor = UIColor.red.cgColor
border.frame = CGRect(x: 0, y: searchBar.frame.size.height + width, width: searchBar.frame.size.width, height: searchBar.frame.size.height)
border.borderWidth = width
searchBar.layer.addSublayer(border)
searchBar.layer.masksToBounds = true
我使用SWIFT 3.0,但添加此评论,我是前在我的最后测试这个功能,它不适合我。我不知道为什么,但这是在任何元素的底部显示边框的正确代码。
我尝试在搜索栏的底部使用insertionlayout,但它不工作。
self.view.layer.insertSublayer(border, below:searchBar.layer)
我不会告诉你这是一个答案。但是这会让你知道如何在特定项目的底部添加布局。
答
只是一个子视图添加到您的文本字段这样
let frame = CGRectMake(0, textField.frame.size.height - 1, textField.frame.size.width, 1)
let border = UIView(frame: frame)
border.backgroundColor = UIColor.whiteColor()
textField.addSubview(border)
您可以添加高度的视图1点为您的UISearchBar的子视图。那会为你做。 – Adeel
这是为我工作的!谢谢@AdeelMiraj – Rebecca
不客气。乐于帮助 :)。我用代码回答了这个问题以供参考。 – Adeel