UIInputViewController
Наследование
-
NSObject -
UIResponder -
UIViewController -
UIInputViewController
-
NSObject -
UIResponder -
UIViewController -
UIInputViewController
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSExtensionRequestHandling -
NSObjectProtocol -
Печатаемый -
UIAppearanceContainer -
UIContentContainer -
UIStateRestoring -
UITextInputDelegate -
UITraitEnvironment -
NSCoding -
NSObject -
UIAppearanceContainer -
UIContentContainer -
UITextInputDelegate -
UITraitEnvironment
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 8.0 и позже.
Для создания пользовательской клавиатуры запустите путем разделения на подклассы UIInputViewController класс. Добавьте пользовательский интерфейс своей клавиатуры к inputView свойство Вашего подкласса.
Xcode 6 и позже обеспечивает начальную точку для пользовательской клавиатуры: Пользовательская Клавиатура предназначается для шаблона.
Пользовательская клавиатура может реагировать на события ввода данных пользователем следующими способами:
Добавьте текст в форме неприписанного
NSStringобъект в точке вставки во входном объекте текущего текста, путем вызоваinsertText:метод наtextDocumentProxyсвойство. Это свойство обеспечивает тот метод через свое соответствие кUIKeyInputпротоколУдалите текст в обратном направлении, запускающемся в точке вставки, путем вызова
deleteBackwardметод наtextDocumentProxyсвойство.Переключитесь на другую клавиатуру в наборе поддерживающих пользователя клавиатур путем вызова
advanceToNextInputModeметод.Отклоните клавиатуру путем вызова
dismissKeyboardметод.
Получите текстовый контекст вокруг точки вставки путем чтения textDocumentProxy свойства documentContextBeforeInput и documentContextAfterInput. Чтобы узнать, пуст ли входной объект текущего текста, вызовите hasText метод на textDocumentProxy свойство. Можно использовать этот текстовый контекст путем рассмотрения его вместе с вводом данных пользователем, для предложения контекстно-зависимого вывода документу с клавиатуры.
Входной контроллер представления соответствует UITextInputDelegate протокол, позволяя Вам реагировать на изменения в содержании документа и позиции точки вставки.
Для представления надлежащей раскладки клавиатуры реагируйте на входной объект текущего текста UIKeyboardType свойство. Для каждой черты типа клавиатуры Вы поддерживаете, изменяете содержание своего основного представления соответственно.
Для больше о создании пользовательской клавиатуры, считайте Пользовательскую Клавиатуру в Руководстве по программированию Расширения Приложения.
-
inputViewСвойствоОсновное представление для ввода просматривает контроллер.
Объявление
Swift
var inputView: UIInputView!Objective C
@property(nonatomic, retain) UIInputView *inputViewОбсуждение
Когда используется в качестве основного представления для ввода просматривают контроллер, a
UIInputViewобъект пуст. Добавьте пользовательский интерфейс своей клавиатуры к этому представлению.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Переключатели на следующую клавиатуру в списке поддерживающих пользователя клавиатур.
Объявление
Swift
func advanceToNextInputMode()Objective C
- (void)advanceToNextInputModeОбсуждение
Для передачи анализа приложения необходимо предоставить очевидное управление пользовательским интерфейсом пользователю для переключения далеко от клавиатуры.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Отклоняет пользовательскую клавиатуру от с экрана.
Объявление
Swift
func dismissKeyboard()Objective C
- (void)dismissKeyboardОбсуждение
Поскольку пользовательская клавиатура не имеет доступа к входному объекту текущего текста, Вы не можете отправить ему a
resignFirstResponderсообщение (как Вы были бы для отклонения системной клавиатуры при разработке приложения с вводом текста). Для отклонения пользовательской клавиатуры вызватьdismissKeyboardвместо этого.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
textDocumentProxyСвойствоПрокси к вводу текста возражает, что пользовательская клавиатура взаимодействует с. (только для чтения)
Объявление
Swift
var textDocumentProxy: NSObject { get }Objective C
@property(nonatomic, readonly) NSObject < UITextDocumentProxy > *textDocumentProxyОбсуждение
Это свойство соответствует прямо или косвенно следующим протоколам:
UITextDocumentProxyпротокол обеспечивает текстовый контекст вокруг точки вставкиUIKeyInputпротокол обеспечивает вставку, и удалите методы, и позволяет Вам узнать, пуст ли текстовый объектUITextInputTraitsпротокол обеспечивает понимание характеристик объекта ввода текста, такой как, запрашивает ли это стиль автокапитализации и какой вид клавиатуры это ожидает (например, адрес электронной почты, URL, цифровая клавиатура или значение по умолчанию).
Используйте это свойство для взаимодействия с входным объектом текущего текста. Например, для вставки текста Вы записали бы код как это:
[self.textDocumentProxy insertText:@"hello "]; // Inserts the string "hello " at the insertion point
Для удаления кода, Вы записали бы код как это:
[self.textDocumentProxy deleteBackward]; // Deletes the character to the left of the insertion point
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
Получает дополнительный словарь пар срока для использования в пользовательской клавиатуре.
Объявление
Swift
func requestSupplementaryLexiconWithCompletion(_completionHandler: (UILexicon!) -> Void)Objective C
- (void)requestSupplementaryLexiconWithCompletion:(void (^)(UILexicon *))completionHandlerПараметры
completionHandlerКод, который Вы пишете для использования возвращенного
UILexiconобъект.Обсуждение
Вызовите этот метод для получения a
UILexiconобъект, содержащий основной набор пар срока для использования в автоисправлении или текстовых предложениях на основе ввода данных пользователем.UILexiconобъект содержит слова из различных источников, включая:Непарные имена и фамилии от базы данных Address Book пользователя
Текстовые ярлыки, определенные в Настройках> Общий> Клавиатура> список Ярлыков
Словарь общих слов
Рассмотрите этот словарь как дополнение к более полному словарю Вашего собственного проекта.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
-
primaryLanguageСвойствоОсновной язык для пользовательской клавиатуры.
Объявление
Swift
var primaryLanguage: String?Objective C
@property(nonatomic, copy) NSString *primaryLanguageОбсуждение
Идентификатор BCP 47 языка, такой как
en-US. Если указано, это значение заменяетPrimaryLanguageвведите пользовательскую клавиатуруInfo.plistфайл.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 8.0 и позже.
