Почему после отставки клавиатуры в строке поиска остается UIToolbar? - PullRequest
0 голосов
/ 27 апреля 2020

Это программно сделано кстати. Я добавил UISearchBar в представление заголовка навигации. Он становится первым респондентом при первой загрузке контроллера. Нажатие кнопки отмены на панели поиска приводит к удалению клавиатуры и возврату к root представлению контроллера. Когда это происходит, UIToolbar остается со значительным размытием поверх всего представления UIToolBar. Я проверил это через иерархию представлений, и она показывает, что это панель инструментов, оставленная позади, я думаю, что вид снизу клавиатуры, где находятся кнопки эмодзи и голосовые кнопки. Я пробовал resigningFirstResponder и endEditing (true). Оба по-прежнему оставляют за собой панель инструментов, которую я никогда не создавал в своем приложении. Любые рекомендации о том, как это исправить, или это ошибка, которая находится вне моего контроля?

Реализация,

// Setup for viewDidLoad
    private func setup() {
        // Navigation
        navigationController?.setToolbarHidden(false, animated: true)
        navigationItem.setHidesBackButton(true, animated: false)
        searchView.searchBar.delegate = self
        navigationItem.titleView = searchView.searchBar
        searchView.searchBar.becomeFirstResponder()
    }

    // When the cancel button is pressed
    public func goBackToRootController() {
        // I've used both individually and together and the problem still occurs
        searchView.searchBar.resignFirstResponder()
        searchView.searchBar.endEditing(true)
        navigationController?.popToRootViewController(animated: true)
    }

1 Ответ

0 голосов
/ 05 мая 2020

Исправлена ​​ошибка - для метода setToolBarHidden () было установлено значение false. Который включает или показывает панель инструментов во всем приложении.

...