Android(安卓)Editable
简单记一下,以前没怎么用过。
EditText View的getText直接返回的就是 Editable
而 TextView则是getEditableText才返回 Editable。
还有就是注释所说,
* Replaces the specified range (<code>st…en</code>) of text in this
* Editable with a copy of the slice <code>start…end</code> from
* <code>source</code>. 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.
replace 在 没有选中内容时 表现为 insert操作,
replace/insert 的String 参数 不能为空.
android.text
接口 Editable
- 所有超级接口:
- Appendable, CharSequence, GetChars, Spannable, Spanned
- 所有已知实现类:
- SpannableStringBuilder
-
public interface Editable
- extends CharSequence, GetChars, Spannable, Appendable
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.
嵌套类摘要 | |
---|---|
staticclass | Editable.Factory Factory used by TextView to create new Editables. |
字段摘要 |
---|
从接口 android.text.Spanned 继承的字段 |
---|
SPAN_COMPOSING, SPAN_EXCLUSIVE_EXCLUSIVE, SPAN_EXCLUSIVE_INCLUSIVE, SPAN_INCLUSIVE_EXCLUSIVE, SPAN_INCLUSIVE_INCLUSIVE, SPAN_INTERMEDIATE, SPAN_MARK_MARK, SPAN_MARK_POINT, SPAN_PARAGRAPH, SPAN_POINT_MARK, SPAN_POINT_MARK_MASK, SPAN_POINT_POINT, SPAN_PRIORITY, SPAN_PRIORITY_SHIFT, SPAN_USER, SPAN_USER_SHIFT |
方法摘要 | |
---|---|
Editable | append(chartext) Convenience for append(String.valueOf(text)). |
Editable | append(CharSequencetext) Convenience for replace(length(), length(), text, 0, text.length()) |
Editable | append(CharSequencetext, intstart, intend) Convenience for replace(length(), length(), text, start, end) |
void | clear() Convenience for replace(0, length(), "", 0, 0) |
void | clearSpans() Removes all spans from the Editable, as if by calling Spannable.removeSpan(java.lang.Object) on each of them. |
Editable | delete(intst, inten) Convenience for replace(st, en, "", 0, 0) |
InputFilter[] | getFilters() Returns the array of input filters that are currently applied to changes to this Editable. |
Editable | insert(intwhere, CharSequencetext) Convenience for replace(where, where, text, 0, text.length()); |
Editable | insert(intwhere, CharSequencetext, intstart, intend) Convenience for replace(where, where, text, start, end) |
Editable | replace(intst, inten, CharSequencetext) Convenience for replace(st, en, text, 0, text.length()) |
Editable | replace(intst, inten, CharSequencesource, intstart, intend) Replaces the specified range ( st…en ) of text in this Editable with a copy of the slice start…end from source . |
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. |
从接口 android.text.GetChars 继承的方法 |
---|
getChars |
从接口 android.text.Spannable 继承的方法 |
---|
removeSpan, setSpan |
从接口 android.text.Spanned 继承的方法 |
---|
getSpanEnd, getSpanFlags, getSpans, getSpanStart, nextSpanTransition |
从接口 java.lang.CharSequence 继承的方法 |
---|
charAt, length, subSequence, toString |
方法详细信息 |
---|
replace
Editable replace(intst, inten, CharSequencesource, intstart, intend)
- Replaces the specified range (
st…en
) of text in this Editable with a copy of the slicestart…end
fromsource
. 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(android.text.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. As a special case, the cursor position is preserved even when the entire range where it is located is replaced. -
- 返回:
- a reference to this object.
replace
Editable replace(intst, inten, CharSequencetext)
- Convenience for replace(st, en, text, 0, text.length())
-
- 另请参见:
- replace(int, int, CharSequence, int, int)
insert
Editable insert(intwhere, CharSequencetext, intstart, intend)
- Convenience for replace(where, where, text, start, end)
-
- 另请参见:
- replace(int, int, CharSequence, int, int)
insert
Editable insert(intwhere, CharSequencetext)
- Convenience for replace(where, where, text, 0, text.length());
-
- 另请参见:
- replace(int, int, CharSequence, int, int)
delete
Editable delete(intst, inten)
- Convenience for replace(st, en, "", 0, 0)
-
- 另请参见:
- replace(int, int, CharSequence, int, int)
append
Editable append(CharSequencetext)
- Convenience for replace(length(), length(), text, 0, text.length())
-
- 指定者:
- 接口
Appendable
中的append
-
- 参数:
-
text
- the character sequence to append. - 返回:
- this
Appendable
. - 另请参见:
- replace(int, int, CharSequence, int, int)
append
Editable append(CharSequencetext, intstart, intend)
- Convenience for replace(length(), length(), text, start, end)
-
- 指定者:
- 接口
Appendable
中的append
-
- 参数:
-
text
- the character sequence to append. -
start
- the first index of the subsequence ofcsq
that is appended. -
end
- the last index of the subsequence ofcsq
that is appended. - 返回:
- this
Appendable
. - 另请参见:
- replace(int, int, CharSequence, int, int)
append
Editable append(chartext)
- Convenience for append(String.valueOf(text)).
-
- 指定者:
- 接口
Appendable
中的append
-
- 参数:
-
text
- the character to append. - 返回:
- this
Appendable
. - 另请参见:
- replace(int, int, CharSequence, int, int)
clear
void clear()
- Convenience for replace(0, length(), "", 0, 0)
-
- 另请参见:
-
Note that this clears the text, not the spans; use {@link #clearSpans} if you need that.
clearSpans
void clearSpans()
- Removes all spans from the Editable, as if by calling Spannable.removeSpan(java.lang.Object) on each of them.
setFilters
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.
getFilters
InputFilter[] getFilters()Returns the array of input filters that are currently appliedto changes to this Editable.
更多相关文章
- RxJava2+retrofit简单使用,基于POST请求封装工具类
- Android(安卓)NDK学习笔记11-JNI异常处理
- Android之常用类型转换
- Android初级教程_onKeyDown监听返回键无效
- 安卓开发之去标题栏
- android之SharedPreferences
- Android实现手机振动设置的方法
- 删除android默认APK的方法
- android 通过webservice方式向服务器上传图片