Таблица результатов UISearchController не подходит для окна IOS 8.1

Я реализовал UISearchController для поиска данных моего приложения. на ios 9 работает нормально.

Но когда я запускаю приложение на симуляторе IOS 8.1, возникают следующие проблемы, когда я запускаю поиск.

введите здесь описание изображения

Таблица контроллера результатов поиска не соответствует окну.

Я реализовал UISearchViewController следующим образом.

override func viewDidLoad() {
    super.viewDidLoad()

    let searchResultControllerNetwork = HVNetworkSearchController()
    searchResultControllerNetwork.selectRowDelegate = self
    searchControllerNetwork = UISearchController(searchResultsController: searchResultControllerNetwork)
    let _ = self.searchControllerNetwork.view
    searchControllerNetwork.searchResultsUpdater = searchResultControllerNetwork
    searchControllerNetwork.searchBar.delegate = self
    searchControllerNetwork.searchBar.sizeToFit()
    self.view.addSubview(self.searchControllerNetwork.searchBar)
    self.definesPresentationContext = true

    //Other codes here
}

Я не мог найти решение в Интернете, и я решил опубликовать проблему здесь.


person Dimuth Lasantha    schedule 24.07.2016    source источник


Ответы (1)


Кажется, это ошибка iOS 8. Это происходит по следующей причине

Контроллер результатов поиска не имеет панели навигации. IOS 8 использует предыдущую высоту таблицы контроллера представления. Поскольку нет панели навигации, она уменьшается снизу. Как мы можем исправить проблему для IOS 8, так как это происходит на IOS 8.

Я сделал следующее

@IBOutlet var tableviewBottomConstraint: NSLayoutConstraint!

if (System version is less than 9.0) {
    tableviewBottomConstraint.constant = -(navigation bar height)
}
person Dimuth Lasantha    schedule 25.07.2016