uisearchcontroller中三个字母后开始搜索

Start search after three letters in uisearchcontroller

我希望 uisearchcontroller 在我在搜索栏中输入至少三个字符后开始搜索。那么,我该怎么做呢?

    func configureSearchController() {
    // Initialize and perform a minimum configuration to the search controller.
    searchController = UISearchController(searchResultsController: nil)
    searchController.searchResultsUpdater = self
    searchController.dimsBackgroundDuringPresentation = false
    searchController.searchBar.placeholder = "Search"
    searchController.searchBar.delegate = self
    searchController.searchBar.sizeToFit()

    let textFieldInsideSearchBar = searchController.searchBar.valueForKey("searchField") as! UITextField
    textFieldInsideSearchBar.font = UIFont(name: "Bauhaus", size: 19)


   searchController.searchBar.setImage(UIImage(named: "searchikon"), forSearchBarIcon: UISearchBarIcon.Search, state: UIControlState.Normal);

    // Place the search bar view to the tableview headerview.
    TableView.tableHeaderView = searchController.searchBar

您需要在检查文本字段更改的事件中检查字符的长度:

nameOfString.characters.count

您只需为 UISearchController 添加一个必需的方法。

func updateSearchResultsForSearchController(searchController: UISearchController)     {   
    if searchController.searchBar.text?.characters.count > 2 {
        // Filter your search results here
    }

}