13

ユーザーが中国語のピンインなどのインプット メソッドを使用して UITextView に入力している場合、ピンインが既にテキスト ビューに表示されている状態がありますが、ユーザーはまだ最終的な中国語の文字を選択していません。スクリーンショットはより明確になります。

ここに画像の説明を入力

ユーザーのためにテキスト補完を行いたいのですが、実際の入力 (ユーザーが選択した漢字) に対してのみ行う必要があり、中間ピンイン入力に対しては行うべきではありません。したがって、この保留状態を検出する必要があります。

4

1 に答える 1

35

最後にそれを手に入れました。Pinyin などの入力メソッドが呼び出されMultistage Text Inputます。第一段階をMarked、第二段階を と呼びCommittedます。Markedステージにあるかどうかを判断するには、UITextInputProtocol のmarkedTextRangeプロパティをクエリする必要があります。

if (textView.markedTextRange != nil) {
    // Marked.
}
于 2012-11-19T15:45:46.617 に答える