共用方式為


Paint.GetOffsetForAdvance 方法

定義

多載

GetOffsetForAdvance(String, Int32, Int32, Int32, Int32, Boolean, Single)
GetOffsetForAdvance(ICharSequence, Int32, Int32, Int32, Int32, Boolean, Single)
GetOffsetForAdvance(Char[], Int32, Int32, Int32, Int32, Boolean, Single)

取得字串中位置最接近指定水準位置的字元位移。

GetOffsetForAdvance(String, Int32, Int32, Int32, Int32, Boolean, Single)

public int GetOffsetForAdvance (string? text, int start, int end, int contextStart, int contextEnd, bool isRtl, float advance);
member this.GetOffsetForAdvance : string * int * int * int * int * bool * single -> int

參數

text
String

要測量的文字。 不可以是 null。

start
Int32

要測量的範圍開頭的索引

end
Int32

要測量的範圍結尾的索引 + 1

contextStart
Int32

成形內容開頭的索引

contextEnd
Int32

要測量的範圍結尾的索引 + 1

isRtl
Boolean

執行是否以 RTL 方向執行

advance
Single

相對於執行開始的寬度

傳回

位移的索引

備註

android.graphics.Paint.getOffsetForAdvance(java.lang.CharSequence, int, int, int, int, boolean, float)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

GetOffsetForAdvance(ICharSequence, Int32, Int32, Int32, Int32, Boolean, Single)

[Android.Runtime.Register("getOffsetForAdvance", "(Ljava/lang/CharSequence;IIIIZF)I", "GetGetOffsetForAdvance_Ljava_lang_CharSequence_IIIIZFHandler", ApiSince=23)]
public virtual int GetOffsetForAdvance (Java.Lang.ICharSequence? text, int start, int end, int contextStart, int contextEnd, bool isRtl, float advance);
[<Android.Runtime.Register("getOffsetForAdvance", "(Ljava/lang/CharSequence;IIIIZF)I", "GetGetOffsetForAdvance_Ljava_lang_CharSequence_IIIIZFHandler", ApiSince=23)>]
abstract member GetOffsetForAdvance : Java.Lang.ICharSequence * int * int * int * int * bool * single -> int
override this.GetOffsetForAdvance : Java.Lang.ICharSequence * int * int * int * int * bool * single -> int

參數

text
ICharSequence

要測量的文字。 不可以是 null。

start
Int32

要測量的範圍開頭的索引

end
Int32

要測量的範圍結尾的索引 + 1

contextStart
Int32

成形內容開頭的索引

contextEnd
Int32

要測量的範圍結尾的索引 + 1

isRtl
Boolean

執行是否以 RTL 方向執行

advance
Single

相對於執行開始的寬度

傳回

位移的索引

屬性

備註

android.graphics.Paint.getOffsetForAdvance(java.lang.CharSequence, int, int, int, int, boolean, float)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

GetOffsetForAdvance(Char[], Int32, Int32, Int32, Int32, Boolean, Single)

取得字串中位置最接近指定水準位置的字元位移。

[Android.Runtime.Register("getOffsetForAdvance", "([CIIIIZF)I", "GetGetOffsetForAdvance_arrayCIIIIZFHandler", ApiSince=23)]
public virtual int GetOffsetForAdvance (char[]? text, int start, int end, int contextStart, int contextEnd, bool isRtl, float advance);
[<Android.Runtime.Register("getOffsetForAdvance", "([CIIIIZF)I", "GetGetOffsetForAdvance_arrayCIIIIZFHandler", ApiSince=23)>]
abstract member GetOffsetForAdvance : char[] * int * int * int * int * bool * single -> int
override this.GetOffsetForAdvance : char[] * int * int * int * int * bool * single -> int

參數

text
Char[]

要測量的文字。 不可以是 null。

start
Int32

要測量的範圍開頭的索引

end
Int32

要測量的範圍結尾的索引 + 1

contextStart
Int32

成形內容開頭的索引

contextEnd
Int32

要測量的範圍結尾的索引 + 1

isRtl
Boolean

執行是否以 RTL 方向執行

advance
Single

相對於執行開始的寬度

傳回

位移的索引

屬性

備註

取得字串中位置最接近指定水準位置的字元位移。

傳回的值通常是 會產生最接近advance的結果的值offset#getRunAdvance,而且也位於 grapheme 叢集界限上。 因此,這是放置游標以回應觸控或指標事件的慣用方法。 grapheme 叢集界限是以 Unicode 標準附錄 #29 為基礎,但有一些量身打造來提供更好的用戶體驗。

請注意, advance 是相對於執行開始的 (一般是正數) 寬度度量。 因此,對於 RTL,它會從點到右邊緣的距離執行。

所有索引都相對於的 text開頭。 此外, 0 <= contextStart <= start <= end <= contextEnd <= text.length 必須保留專案,並將 start <= result <= end 保留返回。

android.graphics.Paint.getOffsetForAdvance(char[], int, int, int, int, boolean, float)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於