加载控制器时激活UISearchBar

时间:2016-02-21 19:27:59

标签: swift keyboard uikit ios9 uisearchbar

我有以下SearchController:

class SearchController: UITableViewController, UISearchResultsUpdating

实施效果很好,但我每次加载控制器时都必须点击搜索栏开始搜索。我想要的是在加载SearchController后激活搜索栏。我尝试过:

override func viewDidLoad() {
    super.viewDidLoad()

    ...
    ...

    self.resultSearchController.searchBar.becomeFirstResponder()
}

我也尝试过:

override func viewDidAppear(animated: Bool) {
    self.resultSearchController.searchBar.becomeFirstResponder()
}

但搜索栏仍然处于停用状态,键盘也不会显示。我错过了什么?谢谢!

1 个答案:

答案 0 :(得分:1)

这有效(不确定为什么它不适合你):

class ViewController: UIViewController {

    let mySearchController = UISearchController(searchResultsController: nil)

    override func viewDidLoad() {
        super.viewDidLoad()
        navigationItem.titleView = mySearchController.searchBar
        mySearchController.hidesNavigationBarDuringPresentation = false
        mySearchController.searchBar.becomeFirstResponder()
    }
}