IInputConnection.DeleteSurroundingText(Int32, Int32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Удалите <var до символов var перед текущей позицией курсора и удалите ><символы var afterLength></var>< после текущей позиции курсора после текущей позиции курсора, за исключением выделенного фрагмента.>
[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
Параметры
- beforeLength
- Int32
Число символов перед удалением курсора в единице кода. Если это больше числа существующих символов между началом текста и курсором, этот метод не завершается ошибкой, но удаляет все символы в этом диапазоне.
- afterLength
- Int32
Число символов после удаления курсора в единице кода. Если это больше числа существующих символов между курсором и концом текста, этот метод не завершается ошибкой, но удаляет все символы в этом диапазоне.
Возвращаемое значение
Значение true при успешном выполнении, значение false, если входное подключение больше не является допустимым.
- Атрибуты
Комментарии
Удалите <var до символов var перед текущей позицией курсора и удалите ><символы var afterLength></var>< после текущей позиции курсора после текущей позиции курсора, за исключением выделенного фрагмента.> До и после ссылки на порядок символов в строке, а не к их визуальному представлению: это означает, что вам не нужно выяснить направление текста и просто использовать индексы as-is.
Длина предоставляется в Java chars, а не в точках кода или в глифах.
Так как этот метод работает только с текстом до и после выделения, он не может повлиять на содержимое выделенного фрагмента. Это может повлиять на диапазон создания, если диапазон содержит символы, которые необходимо удалить, но в противном случае не измените его. Если некоторые символы в диапазоне создания удаляются, диапазон создания сохраняется, но сокращается, однако многие символы внутри него удалены.
<сильные>авторы IME:</strong> пожалуйста, не будьте осторожны, чтобы удалить только половину суррогатной пары. Кроме того, не следует удалять больше символов, чем в редакторе, так как это может иметь плохое влияние на приложение. Вызов этого метода приведет к вызову android.inputmethodservice.InputMethodService#onUpdateSelection(int, int, int, int, int, int) редактора службы после завершения пакетного ввода.
<
>сильные авторы редактора:</strong> пожалуйста, внимательно следите за условиями гонки при реализации этого вызова. IME может внести изменения в текст или изменить положение выделения и сразу использовать этот метод; Необходимо убедиться, что эффекты согласованы с результатами последних изменений. Кроме того, хотя IME не должен отправлять длину больше содержимого строки, следует проверить значения переполнения и обрезать индексы до размера содержимого, чтобы избежать сбоев. Так как это изменяет содержимое редактора, необходимо внести изменения, известные методу ввода путем вызова InputMethodManager#updateSelection(View, int, int, int, int), но будьте осторожны, чтобы ждать, пока пакетное изменение не будет закончено, если он выполняется.
Java документации по android.view.inputmethod.InputConnection.deleteSurroundingText(int, int).
Части этой страницы — это изменения на основе работы, созданной и общей Project и используемых в соответствии с условиями, описанными в разделе "".