Swift: кнопка очистки UISearchController при нажатии кнопки отмены

У меня странная проблема: когда я нажимаю "x" в строке поиска, чтобы очистить текстовое поле, он регистрируется как жест на кнопке "Отмена / Готово" и закрывает вид (см. Рисунок в ссылке ниже). Но когда я нажимаю несколько точек слева от кнопки очистки, он выполняет желаемое действие по очистке текстового поля. Ниже приведен мой код для настройки представления таблицы панели поиска

https://giphy.com/gifs/oXA94eUOyaVTW

func presentSearchBarViews() {
    searchController.searchBar.sizeToFit()

    tableView.tableHeaderView = searchController.searchBar
    tableView.tableFooterView = UIView()
    if #available(iOS 9.0, *) {
    searchController.searchBar.setValue("Done", forKey:"_cancelButtonText")

    searchController.searchBar.placeholder = "Search for food"
    searchController.searchBar.showsCancelButton = true
    searchController.searchBar.layer.borderWidth = 1;
    searchController.searchBar.layer.borderColor = UIColor.init(red: 0.45, green: 0.78, blue: 0.77, alpha: 1.0).CGColor
    searchController.searchBar.delegate = self
}

Я довольно озадачен тем, как решить эту проблему, так как я настраиваю панель поиска программно. Любая помощь высоко ценится!

ОБНОВИТЬ

настройка searchController.searchBar.showsCancelButton = false кажется, не избавиться от кнопки Готово / Отмена, как это должно быть. Что может быть причиной этого?

0 ответов

Другие вопросы по тегам