Панель поиска не отображается в представлении контроллера - PullRequest
1 голос
/ 28 февраля 2020

Я пытаюсь добавить панель поиска в мой контроллер вида программно, но проблема

Я сталкиваюсь с тем, что панель поиска не видна в контроллере представления, мне было интересно, как бы я отобразил панель поиска в контроллере вида.

class LocationViewController: UIViewController {

    let locationManager = CLLocationManager()
    var resultSearchControlle: UISearchController? = nil

    @IBOutlet weak var mapView: MKMapView!

    override func viewDidLoad() {
        super.viewDidLoad()

        let locationSearchTable = storyboard!.instantiateViewController(identifier: "LocationSearchTable") as! LocationTableViewController

        resultSearchControlle = UISearchController(searchResultsController: locationSearchTable)

        resultSearchControlle?.searchResultsUpdater = locationSearchTable

        let searchBar = resultSearchControlle!.searchBar

        searchBar.sizeToFit()

        searchBar.placeholder = "Search for a place"

        navigationItem.titleView = resultSearchControlle?.searchBar
        navigationItem.hidesSearchBarWhenScrolling = false

        definesPresentationContext = true

        locationSearchTable.mapView = mapView

    }

Ответы [ 2 ]

0 голосов
/ 28 февраля 2020

Встроить контроллер представления, в котором должна отображаться панель поиска, в Navigation Controller:

Выберите LocationViewController в раскадровке, а затем в меню.

Редактор -> Вставить В -> Навигационный контроллер

0 голосов
/ 28 февраля 2020

Я использую ваш код и получаю этот результат

var resultSearchControlle: UISearchController? = nil
    // MARK: - Constants

    //static let reuseIdentifier = "Cell"
    override func viewDidLoad() {
        resultSearchControlle = UISearchController()
        let searchBar = resultSearchControlle!.searchBar
        searchBar.sizeToFit()
        searchBar.placeholder = "Search for a place"
        navigationItem.titleView = resultSearchControlle?.searchBar
        navigationItem.hidesSearchBarWhenScrolling = false
        definesPresentationContext = true

      //  locationSearchTable.mapView = mapView

    } 

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...