XCode 26.6 日本語化計画
ユーザーから言語固有のテキスト入力を収集するためのモーダルインターフェースを表示します。
func presentTextInputControllerWithSuggestions(
forLanguage suggestionsHandler: ((String) -> [Any]?)?,
allowedInputMode inputMode: WKTextInputMode,
completion: @escaping ([Any]?) -> Void
)
func presentTextInputControllerWithSuggestions(
forLanguage suggestionsHandler: ((String) -> [Any]?)?,
allowedInputMode inputMode: WKTextInputMode
) async -> [Any]?
suggestionsHandler
現在の言語に基づいて候補を提供するブロックです。WatchKit は、ユーザーが指定した言語に対してこのブロックを呼び出し、言語が変更された場合には再度呼び出すことがあります。このブロックは、指定された言語で表示する候補を返します。このブロックは、候補を表す NSString オブジェクトの配列を返し、以下のパラメータを受け取ります。
inputLanguage
候補を返す対象となる言語。この文字列を使用して、ブロックからどのようなテキスト候補を返すかを決定します。
inputMode
許可すべき入力のタイプ。指定可能な値のリストについては、WKTextInputMode を参照してください。
completion
ユーザーがモーダルインターフェースを閉じた後に実行されるブロックです。このブロックは戻り値を返さず、以下のパラメータを取ります。
results
ユーザーからの入力を含んでいる配列、またはユーザーが操作をキャンセルした場合は nil。配列が提供される場合、その配列内の値は通常、入力されたテキストを表す NSString オブジェクトです。配列には、NSData オブジェクトとしてパッケージ化された絵文字画像が含まれることもあります。このデータオブジェクトを使用して、対応する UIImage オブジェクトを作成できます。
このメソッドは非同期的に実行され、呼び出し後すぐに戻ります。その後のランループのサイクルで、システムは suggestionsHandler ブロックを呼び出し、ユーザーの現在の言語に対応するテキストの候補を取得します。続いて、ユーザーに対してテキスト入力コントローラが表示されます。この入力コントローラには、指定した入力フレーズのリストが表示されるほか、音声入力による新しいテキストフレーズの入力や、絵文字リストからの選択といったオプションも提供されます。ユーザーが入力言語を変更すると、システムは再び suggestionsHandler ブロックを呼び出し、新しい言語に対応する候補を取得します。
ユーザーが値を受け入れるかまたは入力をキャンセルすると、テキスト入力コントローラーは自身を閉じ、WatchKit 拡張機能のメインスレッド上で completion パラメータに指定されたブロックを実行します。このブロックを使用して、受け入れた値を取得し、コンテンツに適用します。ブロックの実行前に、現在のインターフェイスコントローラーがアクティブになります。
このメソッドは、必ず WatchKit 拡張機能のメインスレッドから呼び出してください。
ユーザーからテキスト入力収集するためのモーダルインターフェースを表示します。
func dismissTextInputController()
テキストを返さずに、テキスト入力コントローラーを閉じます。
テキスト入力コントローラーによってサポートされる入力モード。