Compartilhar via


IInputConnection.GetTextBeforeCursorFormatted(Int32, GetTextFlags) Método

Definição

Obtenha <caracteres var>n</var> do texto antes da posição atual do cursor.

[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

Parâmetros

n
Int32

A extensão esperada do texto. Isso não deve ser negativo.

flags
GetTextFlags

Fornece opções adicionais que controlam como o texto é retornado. Pode ser um ou 0 outro .#GET_TEXT_WITH_STYLES

Retornos

o texto antes da posição do cursor; O comprimento do texto retornado pode ser menor que <var>n</var>.

Atributos

Comentários

Obtenha <caracteres var>n</var> do texto antes da posição atual do cursor.

Esse método pode falhar se a conexão de entrada se tornou inválida (como seu processo falhando) ou o editor está demorando muito para responder com o texto (ele é dado alguns segundos para retornar). Em ambos os casos, null é retornado. Esse método não afeta o texto no editor de forma alguma, nem afeta a seleção ou as extensões de composição.

Se #GET_TEXT_WITH_STYLES for fornecido como sinalizadores, o editor deve retornar um android.text.SpannableString com todas as extensões definidas no texto.

<fortes>autores IME:</strong> por favor considere que isso desencadeará uma viagem de ida e volta do IPC que levará algum tempo. Suponha que esse método consome muito tempo. Além disso, tenha em mente que o Editor pode optar por retornar menos caracteres do que o solicitado, mesmo que eles estejam disponíveis por motivos de desempenho. Se você estiver usando isso para obter o texto inicial em torno do cursor, você pode considerar o uso EditorInfo#getInitialTextBeforeCursor(int, int)de , EditorInfo#getInitialSelectedText(int)e EditorInfo#getInitialTextAfterCursor(int, int) para evitar custos de IPC.

<Autores editores>:/strong> por favor,< tenham cuidado com as condições raciais na implementação desta chamada. Um IME pode fazer uma alteração no texto e usar esse método imediatamente; Você precisa verificar se o valor retornado é consistente com o resultado das edições mais recentes. Além disso, você pode retornar menos de n caracteres se o desempenho assim o exigir, mas lembre-se de que os IMEs dependem disso para muitas funções: você não deve, por exemplo, limitar o valor retornado à linha atual e, especificamente, não retornar 0 caracteres, a menos que o cursor esteja realmente no início do texto.

Documentação Java para android.view.inputmethod.InputConnection.getTextBeforeCursor(int, int).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Aplica-se a