IInputConnection.DeleteSurroundingText(Int32, Int32) Método

Definición

Elimine <var>beforeLength/var< caracteres de texto antes de la posición actual del cursor y elimine >los caracteres var<afterLength></var> del texto después de la posición actual del cursor, excluyendo la selección.

[Android.Runtime.Register("deleteSurroundingText", "(II)Z", "GetDeleteSurroundingText_IIHandler:Android.Views.InputMethods.IInputConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")]
public bool DeleteSurroundingText(int beforeLength, int afterLength);
[<Android.Runtime.Register("deleteSurroundingText", "(II)Z", "GetDeleteSurroundingText_IIHandler:Android.Views.InputMethods.IInputConnectionInvoker, Mono.Android, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null")>]
abstract member DeleteSurroundingText : int * int -> bool

Parámetros

beforeLength
Int32

Número de caracteres antes del cursor que se va a eliminar, en la unidad de código. Si es mayor que el número de caracteres existentes entre el principio del texto y el cursor, este método no produce un error, sino que elimina todos los caracteres de ese intervalo.

afterLength
Int32

Número de caracteres después del cursor que se va a eliminar, en la unidad de código. Si es mayor que el número de caracteres existentes entre el cursor y el final del texto, este método no produce un error, pero elimina todos los caracteres de ese intervalo.

Devoluciones

true si la conexión de entrada ya no es válida.

Atributos

Comentarios

Elimine <var>beforeLength/var< caracteres de texto antes de la posición actual del cursor y elimine >los caracteres var<afterLength></var> del texto después de la posición actual del cursor, excluyendo la selección. Antes y después de hacer referencia al orden de los caracteres de la cadena, no a su representación visual: esto significa que no tiene que averiguar la dirección del texto y simplemente puede usar los índices as-is.

Las longitudes se proporcionan en Java caracteres, no en puntos de código ni en glifos.

Puesto que este método solo funciona en texto antes y después de la selección, no puede afectar al contenido de la selección. Esto puede afectar al intervalo de redacción si el intervalo incluye caracteres que se van a eliminar, pero de lo contrario no lo cambiará. Si se eliminan algunos caracteres del intervalo de redacción, el intervalo de redacción se conservará pero se acortará con muchos caracteres dentro de él.

<autores fuertes>de IME:</strong> por favor tenga cuidado de no eliminar solo la mitad de un par suplente. Tenga cuidado también de no eliminar más caracteres de los que están en el editor, ya que puede tener efectos negativos en la aplicación. Al llamar a este método, el editor llamará a android.inputmethodservice.InputMethodService#onUpdateSelection(int, int, int, int, int, int) en el servicio una vez finalizada la entrada por lotes.

<autores de editores fuertes>:</strong> por favor tenga cuidado de las condiciones de carrera en la implementación de esta llamada. Un IME puede realizar un cambio en el texto o cambiar la posición de selección y usar este método inmediatamente; debe asegurarse de que los efectos sean coherentes con los resultados de las ediciones más recientes. Además, aunque el IME no debe enviar longitudes mayores que el contenido de la cadena, debe comprobar los valores de desbordamientos y recortar los índices al tamaño del contenido para evitar bloqueos. Dado que esto cambia el contenido del editor, debe realizar los cambios conocidos en el método de entrada llamando InputMethodManager#updateSelection(View, int, int, int, int)a , pero tenga cuidado de esperar hasta que la edición del lote finalice si hay uno en curso.

Java documentación para android.view.inputmethod.InputConnection.deleteSurroundingText(int, int).

Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el Android y se usan según los términos descritos en creative Creative Commons 2.5 Attribution License.

Se aplica a