Apple Watch 텍스트 입력

1911 단어 iOSSwift애플watchOS

watchOS로 텍스트 입력



Apple Watch에서는 물리적 키보드나 터치 패널에서 키보드를 입력할 수 없습니다.

따라서 Apple Watch에서는 정형문을 준비하고 사용자에게 선택하도록 하여 문자를 입력합니다.
또, 정형문에 존재하지 않는 문자도 입력하고 싶은 경우도 반드시 존재합니다.
그런 경우에는 음성 입력 기능(Siri)을 이용하여 자유자재로 문장을 입력할 수 있습니다.

WKTextInputMode



Apple Watch에서 텍스트 입력 방법을 결정하는 열거형
enum WKTextInputMode : Int {

    case Plain // text (no emoji) from dictation + suggestions
    case AllowEmoji // text plus non-animated emoji from dictation + suggestions
    case AllowAnimatedEmoji // all text, animated emoji (GIF data)
}
  • Plain : 음성 + 정형문
  • AllowEmoji : 이모티콘+음성+정형문
  • AllowAnimatedEmoji : 애니메이션 이모티콘+음성+정형문

  • presentTextInputControllerWithSuggestions



    Apple Watch의 표준 입력 인터페이스 표시
    func presentTextInputControllerWithSuggestions(suggestions: [String]?, allowedInputMode inputMode: WKTextInputMode, completion: ([AnyObject]?) -> Void)
     // results is nil if cancelled
    
    
  • suggestions: [String]? : 정형문으로서 표시하는 캐릭터 라인을 배열로 건네준다
  • inputMode : WKTextInputMode : 입력 인터페이스 설정
  • completion : ([AnyObject]?) -> Void) : 사용자가 입력 한 값이 배열에 저장되어 호출됩니다.

    dismissTextInputController



    표시된 Apple Watch의 표준 입력 인터페이스 지우기
    func dismissTextInputController()
    

    사용 예


    let suggestions: Array<String>! = ["はい、なんでしょう?", "今、向かっています。","わかりました。"]
    self.presentTextInputControllerWithSuggestions(suggestions, allowedInputMode: .Plain) { (objects: [AnyObject]?) -> Void in
                // 入力されたテキスト内容を処理する
    }
    
    ...
    self.dismissTextInputController()
    

  • 좋은 웹페이지 즐겨찾기