【发布时间】:2015-08-03 11:28:02
【问题描述】:
我通过单击一个按钮来创建一个表格视图和一个搜索栏。但是我需要搜索栏出现在自动对焦(用户立即输入文本而无需在搜索栏内单击)。我该怎么做?
【问题讨论】:
标签: swift search uisearchcontroller autofocus
我通过单击一个按钮来创建一个表格视图和一个搜索栏。但是我需要搜索栏出现在自动对焦(用户立即输入文本而无需在搜索栏内单击)。我该怎么做?
【问题讨论】:
标签: swift search uisearchcontroller autofocus
试试这个
@IBOutlet weak var searchBar: UISearchBar!
override func viewDidLoad() {
super.viewDidLoad()
searchBar.becomeFirstResponder()
}
【讨论】:
应该这样做。
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
searchController.active = true
}
...
extension GDSearchTableViewController: UISearchControllerDelegate {
func didPresentSearchController(searchController: UISearchController) {
searchController.searchBar.becomeFirstResponder()
}
}
【讨论】:
Swift 5.2
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
searchController.isActive = true
}
override func viewDidLoad() {
super.viewDidLoad()
searchController.delegate = self
}
extension ViewController: UISearchControllerDelegate {
func didPresentSearchController(_ searchController: UISearchController) {
searchController.searchBar.becomeFirstResponder()
}
}
【讨论】: