EditText焦点的获取和TextWatcher的使用

来源:互联网 发布:仓库管理系统java 编辑:程序博客网 时间:2024/06/06 09:14

当点击EditText,通过requestFocus()方法获取焦点时,如果EditText是先填充内容后获取焦点的话,插入符位置是在文本的最后。如果是先获取焦点,然后再填充内容,焦点的位置是在文本的最前面,此时应通过setSelection()方法设置插入符的位置。


TextWatcher

可以对EditText插入的文本进行实时的监听判断。


TextWatcher key_watcher = new TextWatcher() {@Overridepublic void onTextChanged(CharSequence s, int start, int before, int count) {  //s:文本框中输入的所有文字 start:添加文字的位置 before:一直是0 count:此次添加文字的总个数// TODO Auto-generated method stub}@Overridepublic void beforeTextChanged(CharSequence s, int start, int count, int after) { //s:之前的文字内容 start:添加文字的位置 count:一直是0 after:此次添加的文字总数(并不是输入框中的文字总数)// TODO Auto-generated method stub}@Overridepublic void afterTextChanged(Editable s) {  //s:输入框中的所有文字// TODO Auto-generated method stub}};

通过addTextChangedListener()方法添加TextWatcher。



0 0
原创粉丝点击