2017-10-19 11 views
0

UISearchControllerのカスタムUITableViewControllerは、searchコントローラをnavigationItem.searchControllerに設定すると、iOS 11の検索バーをオーバーレイします。テーブルビューコントローラは画面全体をカバーしているため、入力中に検索バーが表示されません。 UISearchControllerにnilを送信しても、これは問題ではありません。基本的には、このマップアプリケーションの検索バーがあるので、場所を検索するときに検索結果の表示を処理するUITearchViewrollerにUITableViewControllerを設定しています。以前は、テーブルバーは検索バーの下部に表示され、今度は画面全体をカバーします。UISearchControllerのカスタムUITableViewControllerは、iOS 11の検索バーをオーバーレイします。

searchController = UISearchController(searchResultsController: searchResultsController) 
    searchController.searchBar.sizeToFit() 
    searchController.hidesNavigationBarDuringPresentation = true 
    searchController.dimsBackgroundDuringPresentation = true 
    searchController.definesPresentationContext = false 
    searchController.searchResultsUpdater = self 
    searchController.delegate = self 

    if #available(iOS 11.0, *){ 
     self.navigationItem.searchController = searchController 
    } 

答えて

0

問題が見つかりました:

は、ここでは、コードスニペットです。 willPresentSearchControllerに正しい原点値を設定する必要があります

関連する問題