我需要更改导航控制器中搜索栏的方向以设置为中心。我使用以下代码以编程方式创建了搜索栏:
lazy var searchBar:UISearchBar = UISearchBar(frame: CGRectMake(100, 40, 440, 40))
在 viewDidLoad 中:
searchBar.placeholder = "Search for Places"
var leftNavBarButton = UIBarButtonItem(customView:searchBar)
self.navigationItem.leftBarButtonItem = leftNavBarButton
不过,我的左侧还有一个 barButtonItem。这是通过界面设置的。
问题是,当我通过代码添加搜索栏时,屏幕不会显示该按钮,因为它被覆盖,如下面的屏幕截图所示。
如何移动搜索栏以显示菜单按钮,然后在中间显示搜索栏?
你被分配的原因是searchBar
to leftBarButtonItem
它显示在左侧的原因,如果您需要在导航中心添加您的搜索titleView
对于导航栏,更改此设置
searchBar.placeholder = "Search for Places"
var leftNavBarButton = UIBarButtonItem(customView:searchBar)
self.navigationItem.leftBarButtonItem = leftNavBarButton
to
lazy var searchBar:UISearchBar = UISearchBar(frame: CGRectMake(0, 0, 440, 40))
searchBar.placeholder = "Search for Places"
self.navigationItem.titleView = searchBar // or use self.navigationcontroller.topItem?.titleView = searchBar
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)