IInputConnection.GetTextBeforeCursorFormatted(Int32, GetTextFlags) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Rufen Sie <var>n</var> zeichen von Text vor der aktuellen Cursorposition ab.
[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
Parameter
- n
- Int32
Die erwartete Länge des Texts. Dies muss nicht negativ sein.
- flags
- GetTextFlags
Liefert zusätzliche Optionen, die steuern, wie der Text zurückgegeben wird. Kann entweder 0
oder #GET_TEXT_WITH_STYLES
.
Gibt zurück
der Text vor der Cursorposition; Die Länge des zurückgegebenen Texts kann kleiner als <var>n</var> sein.
- Attribute
Hinweise
Rufen Sie <var>n</var> zeichen von Text vor der aktuellen Cursorposition ab.
Diese Methode schlägt möglicherweise fehl, wenn die Eingabeverbindung ungültig wurde (z. B. der Prozessabsturz), oder der Editor dauert zu lange, um mit dem Text zu antworten (es wird ein paar Sekunden zeitig zurückgegeben). In beiden Fällen wird NULL zurückgegeben. Diese Methode wirkt sich weder auf den Text im Editor aus, noch wirkt sie sich auf die Auswahl- oder Erstellungsspanne aus.
Wenn #GET_TEXT_WITH_STYLES
als Kennzeichnungen angegeben wird, sollte der Editor eine android.text.SpannableString
mit allen für den Text festgelegten Spannen zurückgeben.
<starke>IME-Autoren:</starke> Bedenken Sie, dass dies einen IPC-Roundtrip auslöst, der einige Zeit in Anspruch nimmt. Gehen Sie davon aus, dass diese Methode viel Zeit beansprucht. Denken Sie auch daran, dass der Editor aus Leistungsgründen möglicherweise weniger Zeichen als angefordert zurückgibt. Wenn Sie dies verwenden, um den anfänglichen Text um den Cursor zu erhalten, können Sie erwägen, IPC-Kosten zu verwendenEditorInfo#getInitialTextBeforeCursor(int, int)
EditorInfo#getInitialSelectedText(int)
, und EditorInfo#getInitialTextAfterCursor(int, int)
um IPC-Kosten zu vermeiden.
<starke>Autoren des Editors:</strong> bitte achten Sie bei der Implementierung dieses Aufrufs auf Rennbedingungen. Ein IME kann eine Änderung am Text vornehmen und diese Methode sofort verwenden; Sie müssen sicherstellen, dass der zurückgegebene Wert mit dem Ergebnis der neuesten Änderungen konsistent ist. Außerdem können Sie weniger als n Zeichen zurückgeben, wenn die Leistung dies diktiert. Bedenken Sie jedoch, dass IMEs für viele Funktionen darauf angewiesen sind: Sie sollten beispielsweise nicht den zurückgegebenen Wert auf die aktuelle Zeile beschränken und 0 Zeichen nur dann zurückgeben, wenn sich der Cursor wirklich am Anfang des Texts befindet.
Java-Dokumentation für android.view.inputmethod.InputConnection.getTextBeforeCursor(int, int)
.
Teile dieser Seite sind Änderungen auf der Grundlage von Arbeiten, die vom Android Open Source-Projekt erstellt und freigegeben werden und gemäß den in der Creative Commons 2.5 Attribution License beschriebenen Begriffen verwendet werden.