TextBoundsInfo.GetOffsetForPosition(Single, Single) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定した位置に最も近い文字のインデックスを返します。
[Android.Runtime.Register("getOffsetForPosition", "(FF)I", "", ApiSince=34)]
public int GetOffsetForPosition (float x, float y);
[<Android.Runtime.Register("getOffsetForPosition", "(FF)I", "", ApiSince=34)>]
member this.GetOffsetForPosition : single * single -> int
パラメーター
- x
- Single
エディターの座標内の、関心のある場所の x 座標。
- y
- Single
エディターの座標内の、関心のある場所の y 座標。
戻り値
位置が指定された場所に最も近い文字のインデックス。 文字が見つからない場合、-1 が返されます。
- 属性
注釈
指定した位置に最も近い文字のインデックスを返します。 これは、テキスト レイアウト API Layout#getOffsetForHorizontal(int, float)
に似ています。 また、主に、指定された位置のカーソル インデックス (カーソルを配置する前の文字のインデックス) を検索するために使用されます。 返されるインデックスが grapheme 区切りであることが保証されます。 詳細については #getGraphemeSegmentFinder()
を確認してください。
エディターは上から下に水平線でテキストをレイアウトし、各行は Unicode 双方向アルゴリズムで指定された表示アルゴリズムに従ってレイアウトされることを前提としています。
このメソッドは、行情報がないテキスト範囲をチェックしません。 たとえば、 TextBoundsInfo
の範囲はインデックス 5 から 15 です。 関連付けられた SegmentFinder
が 7 から 12 までの 1 行の範囲のみを識別する場合。 このメソッドは、[5, 7) と [12, 15) の範囲のテキストをチェックしません。
次の条件では、有効な文字が見つからないことを示す -1 が返されます。 <ul<>li> 指定されたy
座標は、最初の行の上または最後の行の下にあります (最初の行または最後の行は から#getLineSegmentFinder()
返される によってSegmentFinder
識別されます)。 </li li><> この TextBoundsInfo
には文字がありません。 </li></ul>
の android.view.inputmethod.TextBoundsInfo.getOffsetForPosition(float, float)
Java ドキュメント。
このページの一部は、によって作成および共有された作業に基づく変更であり、に記載されている条件に従って使用されます。