大家好,欢迎来到IT知识分享网。
方法:
onTextChanged(CharSequence text,int start,int lengthBefore,int lengthAfter);//参数名也可能是其他命名。
含义:
0、这个方法表示的是在EditText的内容改变后的回调,即输入或者删除操作完成后的回调。
1、参数text:表示当前显示的EditText内容,即编辑完成后的内容。
2、参数start、lengthBefore、lengthAfter:这三个参数可以看做是一组的,它们表示的都是和输入或删除的那一段内容相关的,都是针对改变的内容的参数。
- start:表示数据改变后,添加或删除的内容,在整个数据中的位置下标。
- lengthBefore:表示改变的内容,改变前的长度(只针对删掉的或输入上的内容)。
- lengthAfter:表示改变的内容,改变后的长度(只针对删掉的或输入上的内容)。
示例一:
EditText中的原内容是“123”,现在在“2”的后面输入“4”。
那么在输入完“4”之后,回调方法时,各个参数的值是:
text=”1243″;//改变后的内容。
start=2;//输入的”4″在整个字符串中的下标是2。
lengthBefore=0;//输入的内容之前长度为0。
lengthAfter=1;//输入的内容输入后长度是1。
#这两个表示的是“4”在输入前和输入后的长度。如果是在“2”的后面直接粘贴上“45”两个数,那么这四个参数是:
text=”12453″;start=2;lengthBefore=0;lengthAfter=2;
示例二:
EditText中的原内容是“12345”,现在把光标移到“4”后面,delete删除“4”。
那么在删除掉“4”之后,回调方法时,各个参数的值是:
text=”1235″;//改变后的内容。
start=3;//被删除的”4″在整个字符串中的下标是3。
lengthBefore=1;//删除的内容之前长度为1。
lengthAfter=0;//删除的内容输入后长度是0。
#这两个表示的是“4”在删除前和删除后的长度。如果是多选一次删除“45”两个数,那么这四个参数是:
text=”123″;start=3;lengthBefore=2;lengthAfter=0;
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/21510.html