Отключить автоматические предложения на панели поиска

#ios

#iOS

Вопрос:

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

Это работает нормально, пока iOS не показывает свое собственное предложение (показано синим цветом под полем ввода).

Пример: я ввожу «autof», и TableView показывает мне две записи (на немецком языке 1. «Auto fahren» и 2. «Autofahrer»).

iOS покажите мне слово «автофокусировка» синим цветом с буквой «X», чтобы удалить его.

Если я выберу вторую запись в этом состоянии, я хочу выполнить поиск по «Autofahrer», но метод делегирования сообщает мне, что поисковое слово изменилось на «автофокусировка». Теперь, перед обработкой выбора TableView, выполняется новый поиск возможных слов для «автофокусировки», в результате чего получается пустой список TableView, и после этого выполняется предыдущий выбор с индексом = 1. Конечно, это приводит к сбою в пустом списке!

Мне вообще не нужны предложения iOS, только выбор из списка. Как я могу сказать моей программе, чтобы она не показывала предложения на моей панели поиска?

Ответ №1:

Установите autocorrectionType = UITextAutocorrectionTypeNo для UITextField или UITextView , поскольку они оба реализуют UITextInputTraits протокол. UISearchBar Реализует UITextField для вас и предоставляет это свойство.