Swift - UIToolbar 中的 UISearchBar
Swift - UISearchBar in UIToolbar
如何在 Swift 的工具栏内创建 UISearchBar?如果我使用 Interface Builder,我会收到以下错误:
error: Illegal Configuration: UISearchBar embedded in UIBarButtonItems (Only available in iPad documents)
这个问题有 Swift 解决方案吗?工具栏将仅在 iPad.
上可用
UIToolBar 只是一个自定义的 UIView,所以您有三个选项(我可以看到)用于您的实现:
首先,如果您想将搜索栏固定在工具栏中,请使用以下代码:
var searchBar = UISearchBar(frame: CGRectMake(0, 0, 100, 50))
var myView = UIView(frame: searchBar.frame)
myView.addSubview(searchBar)
var barButtonItem = [UIBarButtonItem(customView: myView)]
toolBar.setItems(barButtonItem, animated: false)
其次,如果您想要屏幕导航栏中的搜索栏,您可以执行以下操作:
let searchBar = UISearchBar(frame: CGRectMake(0, 0, 300, 50))
navigationController?.navigationBar.addSubview(searchBar)
第三,如果您需要将工具栏放在其他地方,您可以创建自己的自定义 UIView,它看起来像一个工具栏(跨越屏幕的宽度)并向其添加搜索栏。您甚至可以将自己的这个新工具栏自定义 class,以便在整个程序中重复使用。
干杯!
如何在 Swift 的工具栏内创建 UISearchBar?如果我使用 Interface Builder,我会收到以下错误:
error: Illegal Configuration: UISearchBar embedded in UIBarButtonItems (Only available in iPad documents)
这个问题有 Swift 解决方案吗?工具栏将仅在 iPad.
上可用UIToolBar 只是一个自定义的 UIView,所以您有三个选项(我可以看到)用于您的实现:
首先,如果您想将搜索栏固定在工具栏中,请使用以下代码:
var searchBar = UISearchBar(frame: CGRectMake(0, 0, 100, 50))
var myView = UIView(frame: searchBar.frame)
myView.addSubview(searchBar)
var barButtonItem = [UIBarButtonItem(customView: myView)]
toolBar.setItems(barButtonItem, animated: false)
其次,如果您想要屏幕导航栏中的搜索栏,您可以执行以下操作:
let searchBar = UISearchBar(frame: CGRectMake(0, 0, 300, 50))
navigationController?.navigationBar.addSubview(searchBar)
第三,如果您需要将工具栏放在其他地方,您可以创建自己的自定义 UIView,它看起来像一个工具栏(跨越屏幕的宽度)并向其添加搜索栏。您甚至可以将自己的这个新工具栏自定义 class,以便在整个程序中重复使用。
干杯!