添加为导航栏按钮项时,如何更改搜索栏的高度

时间:2018-01-23 21:38:56

标签: ios swift

我将搜索栏添加到导航栏作为左键项目。 我可以将搜索栏的宽度设置为我想要的任何值,但无论我尝试将其设置为什么高度总是相同的。 这是一些代码:

var searchBar = UISearchBar(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width * 0.7, height:28))

let leftNavBarButton                    = UIBarButtonItem(customView:searchBar)  

tabBarController?.navigationItem.leftBarButtonItem   = leftNavBarButton

searchBar.showsCancelButton             = false
searchBar.placeholder                   = NSLocalizedString("VC_SEARCH_PROMPT", comment: "")
searchBar.delegate                      = self
...

我可以通过UISearchBar构造函数中的width参数设置搜索栏的宽度,但更改height参数的值无效 - 搜索栏的高度始终相同。

1 个答案:

答案 0 :(得分:1)

从iOS 11开始,您需要使用约束来调整栏按钮项和标题视图的大小。

searchBar.heightAnchor.constraint(equalToConstant: 28).isActive = true
searchBar.widthAnchor.constraint(equalToConstant: UIScreen.main.bounds.width * 0.7).isActive = true // doubt this is the actual constraint you want though

宣布here.