8

わかりましたので、Apple のUITextInputプロトコルには 2 つのUITextRangeプロパティが必要selectedTextRangemarkedTextRangeあり、ドキュメントには、それはユーザー yatta yatta による未確認のテキスト範囲であるselectedTextRangeサブ範囲であると記載されています。markedTextRangeそれでも、2 つのテキスト範囲を異なる方法で実装する方法に関して、いくつかのことが明確になりません。と の違いを視覚的に説明してもらえselectedTextRangeますmarkedTextRangeか? lengthofが'sで点滅するキャレットを示していることselectedTextRangeを知っています。しかし、「マークされたテキスト」とは一体何ですか?? iOS のテキスト ビューについては、次のようなものしか見たことがありません。0selectedTextRangelocation

<code>selectedTextRange</code> の例

現在の を表していると思いselectedTextRangeます。どのようにmarkedTextRange見えますか?それとも、基本的にはまったく同じものですか?私はとても混乱しています:(事前に助けてくれてありがとう!UITextInputプロトコルの実装方法を理解する上で、ドキュメント自体は役に立たないことが証明されています。

編集

実装markedTextRangeは、ビュー内の一部のテキストが「マーク可能」であるが「読み取り専用」である可能性がありselectedTextRange、「マークされたテキスト」のサブ範囲を示しているという事実と関係markedTextRangeがありますか?

4

1 に答える 1

13

のAppleドキュメントからUITextInput

多段階テキスト入力の一部であるマーク付きテキストは、ユーザーがまだ確認していない暫定的に挿入されたテキストを表します。独特のスタイルに仕上がっています。マークされたテキストの範囲には、文字の範囲またはキャレットである可能性のある選択されたテキストの範囲が常に含まれます。

したがってmarkedTextRange、日本語などの多段階入力を必要とする言語で役立ちます。簡単に言えば、テキスト入力コントロールの値に追加する前に、まだ確認されていないユーザー タイプがmarkedTextRangeゲームに取り込まれるということです。次のGIFmarkedTextRangeは実際の動作を示しています。

ここに画像の説明を入力

未確認の象形文字の背後にあるわずかなサファイアの背景に注目してください。エンター/リターンを押すか、提案からオプションを選択するか、マークされたテキストが入力コントロール値に追加され、背景が削除された後、テキスト領域を指でタップして、テキストが確認されると。

ノート:

  • MarkedTextRange は読み取り専用テキストとは関係ありません
  • MarkedTextRange 内で複数のシンボルを選択できませんでした
于 2014-07-08T22:20:39.883 に答える