2014-08-29 4 views
5

Я создаю пользовательскую клавиатуру iOS 8 как проект для домашних животных.Внедрить Autocorrect в iOS 8 Расширение клавиатуры

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

Я в основном покончил с этим. Последнее препятствие, с которым я сталкиваюсь, - это добавить автокоррект к моей клавиатуре. Есть ли способ, которым автокоррекция может вести себя так же, как на обычной системной клавиатуре?

UILexicon documentation довольно редкий.

EDIT:

Подумайте над этим. Метод UILexicon, по-видимому, возвращает результаты только из контактов и сочетаний клавиш моего устройства. Затем я продолжил просмотр автокоррекции NSString и нашел UITextChecker class, который был доступен с iOS 3.2.

Используя этот подход, я могу получить предложения по автоматическому исправлению отдельных слов, но я все еще изучаю возможность добавления контекстно-зависимого автокоррекции (например, исправление «арктических обезьян» на «арктические обезьяны»).

+0

Я всегда считал, что автокоррекция была обработана самим полем, нет? – Mike

+0

какие-либо новости? ...... –

+0

@MoatazHossam Ничего нового с момента моего редактирования. –

ответ

1

Из документации, кажется, что UILexicon, чтобы помочь вам создать свои собственные автозамены, UILexicon имеет кучу UILexiconEntry записей, содержащие строковые пары, запись содержит userInput строки, которые я предполагаю, его должен быть то, что пользователь и documentText, который, как я полагаю, является тем, что вы должны заменить этим вводом. Вы используете func requestSupplementaryLexiconWithCompletion(_ completionHandler: ((UILexicon!) -> Void)!) Из UIInputViewController, чтобы получить этот UILexicon.

Я предполагаю, что UIInputViewController знает, что было написано в documentProxy, так как это одна ретрансляция эти сообщения, и то, как он знает, что пользователь имеет вход и в свою очередь, что положить в UILexicon ..

Это то, что я понял из чтения документации, я не проверял, хотя это не должно быть очень трудно проверить это проверить ..

Я надеюсь, что это помогает

Daniel

+0

Yup, я потратил некоторое время на изучение UILexicon и, похоже, только возвращает результаты из пользовательских ярлыков и контактов. Он не извлекает никаких данных из системного словаря по умолчанию. –

+0

Это может со временем стать лучше. – Daniel

+0

@KiranPanesar. Как бы вы начали настраивать свой собственный словарь? Я думал о создании NSDictionary с ключами и парами значений, но является ли UILexicon более производительным? Похоже, что вряд ли есть какая-либо документация или подробные примеры. – KingPolygon

0

Че ck out эта простая, но очень эффективная автоматическая правильная реализация http://norvig.com/spell-correct.html

Для автоматического завершения вы можете реализовать trie.

+0

Пожалуйста, укажите некоторую информацию о том, почему и как это помогает. Также, пожалуйста, дублируйте часть информации здесь, если ссылка замирает. –

+0

Люди, ты направляешься по грязным водам здесь.Это НЕ простая задача! – Randy

Смежные вопросы