IInputConnection.GetTextBeforeCursorFormatted(Int32, GetTextFlags) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
在當前游標位置前取得 <var>n</var> 字元。
[Android.Runtime.Register("getTextBeforeCursor", "(II)Ljava/lang/CharSequence;", "GetGetTextBeforeCursor_IIHandler:Android.Views.InputMethods.IInputConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public Java.Lang.ICharSequence? GetTextBeforeCursorFormatted(int n, Android.Views.InputMethods.GetTextFlags flags);
[<Android.Runtime.Register("getTextBeforeCursor", "(II)Ljava/lang/CharSequence;", "GetGetTextBeforeCursor_IIHandler:Android.Views.InputMethods.IInputConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member GetTextBeforeCursorFormatted : int * Android.Views.InputMethods.GetTextFlags -> Java.Lang.ICharSequence
參數
- n
- Int32
文字的預期長度。 這必須是非負數。
- flags
- GetTextFlags
提供更多選項來控制文字回傳方式。 可能是其中之一0#GET_TEXT_WITH_STYLES。
傳回
游標位置前的文字;回傳文本的長度可能小於 <var>n</var>。
- 屬性
備註
在當前游標位置前取得 <var>n</var> 字元。
此方法可能失敗,若輸入連線失效(例如程序當機)或編輯器回覆文字太慢(給予幾秒鐘回傳時間)。 無論哪種情況,都會回傳 null。 此方法不影響編輯器中的文字,也不影響選取或組成的範圍。
如果 #GET_TEXT_WITH_STYLES 以旗標形式提供,編輯器應該回傳包含文字上所有跨度的 a android.text.SpannableString 。
<強烈>的IME作者:</強烈> ,請考慮這將觸發IPC來回行程,且需要一些時間。 假設這種方法會花費大量時間。 另外,請記得編輯者可能會選擇退回比要求少的角色,即使這些角色因效能因素可用。 如果你用它來讓游標上的初始文字,可以考慮使用 EditorInfo#getInitialTextBeforeCursor(int, int)、 EditorInfo#getInitialSelectedText(int),並 EditorInfo#getInitialTextAfterCursor(int, int) 避免 IPC 成本。
<強 編輯>作者:</strong> 請在實施此呼喚時注意競賽條件。 IME 可以立即修改文本並使用此方法;你需要確保回傳的值與最新編輯的結果一致。 此外,如果效能需要,回傳的字元可能少於 n 個字元,但要記得 IME 在許多函式上都依賴這個方法:例如,你不應該限制回傳值到當前行,且除非游標真的在文字開頭,否則絕對不要回傳 0 字元。
Java 文件 android.view.inputmethod.InputConnection.getTextBeforeCursor(int, int)。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。