监听EditText文字变化,TextWatcher详解

(可以实现像微信那样,当用户输入文字后自动修改button颜色) —————-学程序脚踏实地

使用方法如下

EditText  editText=(EditText)findViewById(R.id.edit_text);
editText.addTextChangedListener(mTextWatcher);

 private TextWatcher mTextWatcher = new TextWatcher() {
 /**例子:修改前的文字为:01234     修改后的文字为:01a  (把234换成了a)
* s是修改前的文字,这里为01234
* start是开始修改的位置,这里是2 (位置是从零开始计算的,从第三个数字修       改,返回值是2)
* count是修改的数量,这里是3(234是三个字符),如果只是增加内容,这个值一       直是0因为没有修改内容
* after是新输入文字的数量,这里是1(a一个字符)
 */
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {
            Log.e("beforeTextChanged=>","s:" + s + " start:" + start + " count:" + count + "  after:" + after);
        }
        /**例子:修改前的文字为:01234     修改后的文字为:01a  (把234换成了a)
         * s修改后的文字,这里是01a
         * start开始修改的位置,跟上面的start一致,
         * before修改的文字数量,跟上面的count一致
         * count新输入的文字数量,跟上面的after一致
         */
        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            Log.e("onTextChanged=>","s:" + s + " start:" + start +"  before:"+before+ " count:" + count );
        }
        /**
         * s修改之后的文字,跟onTextChanged的s一致. Editable是接口意思是可以编写的,更多的不知道了
         */
        @Override
        public void afterTextChanged(Editable s) {
            Log.e("afterTextChanged=>","s:" + s );
        }
    };

Log截图:
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值