Editable
public interface Editable
implements Appendable, CharSequence, GetChars, Spannable
android.text.Editable |
This is the interface for text whose content and markup can be changed (as opposed to immutable text like Strings). If you make a DynamicLayout
of an Editable, the layout will be reflowed as the text is changed.
Summary
Nested classes | |
---|---|
class | Editable.Factory Factory used by TextView to create new |
Inherited constants |
---|
Public methods | |
---|---|
abstract Editable | append(char text) Convenience for append(String.valueOf(text)). |
abstract Editable | append(CharSequence text, int start, int end) Convenience for replace(length(), length(), text, start, end) |
abstract Editable | append(CharSequence text) Convenience for replace(length(), length(), text, 0, text.length()) |
abstract void | clear() Convenience for replace(0, length(), "", 0, 0). |
abstract void | clearSpans() Removes all spans from the Editable, as if by calling |
abstract Editable | delete(int st, int en) Convenience for replace(st, en, "", 0, 0) |
abstract InputFilter[] | getFilters() Returns the array of input filters that are currently applied to changes to this Editable. |
abstract Editable | insert(int where, CharSequence text) Convenience for replace(where, where, text, 0, text.length()); |
abstract Editable | insert(int where, CharSequence text, int start, int end) Convenience for replace(where, where, text, start, end) |
abstract Editable | replace(int st, int en, CharSequence source, int start, int end) Replaces the specified range ( |
abstract Editable | replace(int st, int en, CharSequence text) Convenience for replace(st, en, text, 0, text.length()) |
abstract void | setFilters(InputFilter[] filters) Sets the series of filters that will be called in succession whenever the text of this Editable is changed, each of which has the opportunity to limit or transform the text that is being inserted. |
Inherited methods | |
---|---|
Public methods
append
public abstract Editable append (char text)
Convenience for append(String.valueOf(text)).
Parameters | |
---|---|
text | char : The character to append |
Returns | |
---|---|
Editable | A reference to this Appendable |
append
public abstract Editable append (CharSequence text, int start, int end)
Convenience for replace(length(), length(), text, start, end)
Parameters | |
---|---|
text | CharSequence : The character sequence from which a subsequence will be appended. If csq is null , then characters will be appended as if csq contained the four characters "null" . |
start | int : The index of the first character in the subsequence |
end | int : The index of the character following the last character in the subsequence |
Returns | |
---|---|
Editable | A reference to this Appendable |
append
public abstract Editable append (CharSequence text)
Convenience for replace(length(), length(), text, 0, text.length())
Parameters | |
---|---|
text | CharSequence : The character sequence to append. If csq is null , then the four characters "null" are appended to this Appendable. |
Returns | |
---|---|
Editable | A reference to this Appendable |
clear
public abstract void clear ()
Convenience for replace(0, length(), "", 0, 0). Note that this clears the text, not the spans; use clearSpans()
if you need that.
clearSpans
public abstract void clearSpans ()
Removes all spans from the Editable, as if by calling Spannable.removeSpan(Object)
on each of them.
delete
public abstract Editable delete (int st, int en)
Convenience for replace(st, en, "", 0, 0)
Parameters | |
---|---|
st | int |
en | int |
Returns | |
---|---|
Editable |
getFilters
public abstract InputFilter[] getFilters ()
Returns the array of input filters that are currently applied to changes to this Editable.
Returns | |
---|---|
InputFilter[] |
insert
public abstract Editable insert (int where, CharSequence text)
Convenience for replace(where, where, text, 0, text.length());
Parameters | |
---|---|
where | int |
text | CharSequence |
Returns | |
---|---|
Editable |
insert
public abstract Editable insert (int where, CharSequence text, int start, int end)
Convenience for replace(where, where, text, start, end)
Parameters | |
---|---|
where | int |
text | CharSequence |
start | int |
end | int |
Returns | |
---|---|
Editable |
replace
public abstract Editable replace (int st, int en, CharSequence source, int start, int end)
Replaces the specified range (st…en
) of text in this Editable with a copy of the slice start…end
from source
. The destination slice may be empty, in which case the operation is an insertion, or the source slice may be empty, in which case the operation is a deletion.
Before the change is committed, each filter that was set with setFilters(InputFilter)
is given the opportunity to modify the source
text.
If source
is Spanned, the spans from it are preserved into the Editable. Existing spans within the Editable that entirely cover the replaced range are retained, but any that were strictly within the range that was replaced are removed. If the source
contains a span with Spanned.SPAN_PARAGRAPH
flag, and it does not satisfy the paragraph boundary constraint, it is not retained. As a special case, the cursor position is preserved even when the entire range where it is located is replaced.
Parameters | |
---|---|
st | int |
en | int |
source | CharSequence |
start | int |
end | int |
Returns | |
---|---|
Editable | a reference to this object. |
See also:
replace
public abstract Editable replace (int st, int en, CharSequence text)
Convenience for replace(st, en, text, 0, text.length())
Parameters | |
---|---|
st | int |
en | int |
text | CharSequence |
Returns | |
---|---|
Editable |
setFilters
public abstract void setFilters (InputFilter[] filters)
Sets the series of filters that will be called in succession whenever the text of this Editable is changed, each of which has the opportunity to limit or transform the text that is being inserted.
Parameters | |
---|---|
filters | InputFilter |
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-02-10 UTC.