Этот вопрос кажется простым, но я перепробовал все, что мог придумать, и гуглил в течение нескольких часов.
У меня есть NSSearchField, который выполняет автозаполнение, в основном копируя образец кода SearchField от Apple .Я отключил «Отправляет строку поиска целиком» в IB, поскольку не хочу выполнять поиск до тех пор, пока пользователь не завершит ввод текста, и не хочу выполнять многократный поиск (они дорогие).
Когда пользователь печатает в поле, когда он нажимает клавишу ввода, указывая, что он принимает текущее автозаполнение, я хочу, чтобы действие для NSSearchField сработало.Вместо этого он просто заполняет автодополнение, а затем пользователь должен нажать клавишу ввода еще раз, чтобы запустить действие.По сути, подумайте о том, чтобы начать вводить URL-адрес в Safari, он автоматически заполняется, и нажатие клавиши Enter запускает загрузку страницы (запускает действие).Им не нужно нажимать ввод во второй раз, чтобы начать загрузку страницы.
Вещи, которые я безуспешно пробовал:
- control: textView: commandSelector :, ищу insertNewline:.Он не срабатывает, когда они нажимают Enter, чтобы завершить автодополнение
- Переопределение controlTextDidEndEditing :.То же, что и выше
Есть идеи?Спасибо!