精华内容
下载资源
问答
  • editText监听实现

    2016-10-20 18:54:25
    editText监听
  • EditText 监听

    2011-03-25 16:15:57
    TextWatcher --监听EditText的Text改动 2010-09-17 14:49 EditText 监听 Text 的 改动 [功能] 当EditText 的 Text 改变时 我们希望得到通知 但是可惜的是 android 并没有这个监听器 也就无从得知变化了 但是有...
    TextWatcher --监听EditText的Text改动
    2010-09-17 14:49
    EditText 监听 Text 的 改动

    [功能]
    当EditText 的 Text 改变时 我们希望得到通知 但是可惜的是 android 并没有这个监听器 也就无从得知变化了 但是有个类可以帮助我们 那就是 TextWatcher


    [前提]
    现有 EditText 其id = edit.

    [代码]
    1. 定义 TextWatcher 的实例
    Java代码 复制代码
    1. private TextWatcher watcher = new TextWatcher(){   
    2.   
    3.          @Override   
    4.          public void afterTextChanged(Editable s) {   
    5.              // 变化后                
    6.          }   
    7.   
    8.          @Override   
    9.          public void beforeTextChanged(CharSequence s, int start, int count,   
    10.                  int after) {   
    11.              // 变化前
    12.                
    13.          }   
    14.   
    15.          @Override   
    16.          public void onTextChanged(CharSequence s, int start, int before,   
    17.                  int count) {   
    1.              Log.d( "TAG" , "[TextWatcher][onTextChanged]" +s);   
    2.                
    3.          }   
    4.            
    5.      };  



    2. 在 EditText 上注册该 TextWatcher 实例
    Java代码 复制代码
    1. EditText et = (EditText)findViewById(R.id.edit);   
    2.          et.addTextChangedListener(watcher);  



    这样 每当 EditText 的 Text 被改变的时候 onTextChanged() 就会被调用!
    展开全文
  • EditText监听

    2012-12-05 10:24:15
    我们要实现:当EditText的Text改变时,我们希望得到通知,但是可惜的是Android并没有这个监听器,也就无从得知变化了,但我们可以使用TextWatcher类可以帮助我们来实现这个功能。 现有一个id = edit的EditText。 ...

    我们要实现:当EditText的Text改变时,我们希望得到通知,但是可惜的是Android并没有这个监听器,也就无从得知变化了,但我们可以使用TextWatcher类可以帮助我们来实现这个功能。

    现有一个id = edit的EditText。

    1、定义一个TextWatcher的实例。

    ?
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    private TextWatcher watcher = new TextWatcher(){
     
        @Override
        public void afterTextChanged(Editable s) {
            // TODO Auto-generated method stub
        }
     
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, intafter) {
            // TODO Auto-generated method stub
        }
     
        @Override
        public void onTextChanged(CharSequence s, int start, int before, intcount) {
            Log.d("TAG","[TextWatcher][onTextChanged]"+s);
        }
         
    };

    2、在EditText上注册该TextWatcher实例。

    ?
    1
    2
    EditText et = (EditText)findViewById(R.id.edit);
    et.addTextChangedListener(watcher);

    这样每当EditText的Text改变的时候,onTextChanged()就会被调用!

    展开全文
  • Android之EditText监听

    2017-02-22 10:14:29
    EditText 监听输入长度给用户友好的提示,EditText 监听输入

    关于EditText的监听 主要用于设置输入长度给用户友好的提示, 提升良好的用户体验


    方式一:

    监听输入长度和文本信息  但是却做不了提示功能

        EditText editText = (EditText) findViewById(R.id.et_main_text);
        editText.addTextChangedListener(new TextWatcher() {       
    
            @Override
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                L.e("beforeTextChanged : " + s + " - " + start + " - " + count + " - " + after);
                // s: 之前的文字内容
                // start: 添加文字的位置(从0开始)
                // count: 一直是0
                // after: 输入为1 擦除为0
            }
    
            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                L.e("onTextChanged : " + s + " - " + start + " - " + before + " - " + count);
                // s: 之后的文字内容
                // start: 添加文字的位置(从0开始)
                // before: 一直是0
                // after: 输入为1 擦除为0
            }
    
            @Override
            public void afterTextChanged(Editable s) {
                L.e("afterTextChanged : " + s);
                // s:之后的文字内容
            }
     });


    方式二:

    监听输入长度,如果长度超过设置长度给出提示,提升用户体验

    /**
     * 作者: CoolTone
     * 描述: 限制输入字符长度限制 字符长度到达字符限制时再输入给出友好提示
     */
    public class MaxTextLengthFilter implements InputFilter {
    
        private int mMaxLength;
        private Toast mToast = null;
    
        public MaxTextLengthFilter(Context context, int max) {
            mMaxLength = max - 1;
            mToast = Toast.makeText(context, String.format("字符不能超过%d个",mMaxLength), 1000);
            // mToast.setGravity(Gravity.TOP, 0, 280);   //设置显示位置
        }
    
        @Override
        public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int d_start, int d_end) {
            int keep = mMaxLength - (dest.length() - (d_end - d_start));
            if (keep < (end - start)) {
                mToast.show();
            }
            if (keep <= 0) {
                return "";
            } else if (keep >= end - start) {
                return null;
            } else {
                return source.subSequence(start, start + keep);
            }
        }
    }


    在使用时 传入上下文 和 (长度最大限制+1) 即可

     mEditText.setFilters(new InputFilter[]{new MaxTextLengthFilter(this, 12)});


    基于方式二,自定义一个EditTextLimit 可以设置EditText的长度限制

    这里只是实现了代码设置,如果想要在 xml 里设置,还需要费一些功夫了

    /**
     * 作者:CoolTone
     * 描述:可以设置输入长度限制的 EditText
     */
    public class EditTextLimit extends EditText {
    
        public EditTextLimit(Context context, AttributeSet attrs) {
            super(context, attrs);
        }
    
        public EditTextLimit(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
        }
        // 设置长度的方法(上下文,长度)
        public void setTextMaxLengthFilter(Context context, int length) {
            this.setFilters(new InputFilter[]{new MaxTextLengthFilter(context, length + 1)});
        }
    
        class MaxTextLengthFilter implements InputFilter {
    
            private int mMaxLength;
            private Toast mToast = null;
    
            public MaxTextLengthFilter(Context context, int max) {
                mMaxLength = max - 1;
                mToast = Toast.makeText(context, String.format("字符不能超过%d个", mMaxLength), Toast.LENGTH_SHORT);
                // mToast.setGravity(Gravity.TOP, 0, 235);   //设置显示位置
            }
    
            @Override
            public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int d_start, int d_end) {
                int keep = mMaxLength - (dest.length() - (d_end - d_start));
                if (keep < (end - start)) {
                    mToast.show();
                }
                if (keep <= 0) {
                    return "";
                } else if (keep >= end - start) {
                    return null;
                } else {
                    return source.subSequence(start, start + keep);
                }
            }
        }
    }

    用法很简单 findViewById 之后直接调用 setTextMaxLengthFilter( Content context , int length ) 方法即可。


    展开全文
  • EditText监听输入完成

    2014-07-26 21:29:13
    EditText监听输入完成,监听edittext,精确判断什么时候输入完成
  • Android 监听EditText文本输入 EditText监听事和输入事件

    方法一:使用setOnKeyListener(),这种方式只能监听硬键盘事件所以大多数android设备不能用

    editText.setOnKeyListener(new View.OnKeyListener() {              
                @Override  
                public boolean onKey(View v, int keyCode, KeyEvent event) {  
                    Log.i(TAG, editText.getText());  
                    return false;  
                }  
            }); 
    方法二:使用TextWatcher类,可监听软键盘和硬键盘的,只需实现onTextChanged方法即可,另外TextWatcher还提供了beforeTextChanged和afterTextChanged方法,用于更加详细的输入监听处理
    editText.addTextChangedListener(new TextWatcher() {           
                @Override  
                public void onTextChanged(CharSequence s, int start, int before, int count) {  
                	Log.i(TAG, "输入文字中的状态,count是输入字符数"); 
                    Log.i(TAG, editText.getText());  
                }  
                  
                @Override  
                public void beforeTextChanged(CharSequence s, int start, int count,  
                        int after) {   
                	Log.i(TAG, "输入文本之前的状态");  
                }  
                  
                @Override  
                public void afterTextChanged(Editable s) {   
                	Log.i(TAG, "输入文字后的状态");  
                }  
            });
    方法三:实现当输入到最大值时则不允许再输入,另外由EditText并没有提供给我们EditText的禁止输入功能,以下方法也实现了此功能。
      private void setEditable(EditText editText, int maxLength, boolean value) {  
            if (value) {  
                editText.setFilters(new InputFilter[] { new MyEditFilter(maxLength) });  
                editText.setCursorVisible(true);  
                editText.setFocusableInTouchMode(true);  
                editText.requestFocus();  
            } else {  
                editText.setFilters(new InputFilter[] { new InputFilter() {  
                    @Override  
                    public CharSequence filter(CharSequence source, int start,  
                            int end, Spanned dest, int dstart, int dend) {  
                        return source.length() < 1 ? dest.subSequence(dstart, dend)  
                                : "";  
                    }  
                } });  
                editText.setCursorVisible(false);  
                editText.setFocusableInTouchMode(false);  
                editText.clearFocus();  
            }  
        } 




    展开全文
  • 下面小编就为大家分享一篇Android EditText 监听用户输入完成的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • Hello I am going crazy to understand where is the problem in this ... I am trying to create one dialog with inside an edittext.. If the edittext is empty the positive button must be disabled else ...
  • 在EditText提供了一个方法addTextChangedListener实现对输入文本的监控。本文分享了EditText监听方法案例,需要的朋友一起来看下吧
  • edittext监听事件的使用了。对于其监听事件一般有两种: 一种为:setOnEditorActionListener,另一种为:addTextChangedListener setOnEditorActionListener对于控件按回车键的时候的监听。 addTextChangedListener...
  • EditText 监听焦点变化 mmet.setOnFocusChangeListener(new android.view.View. OnFocusChangeListener() { @Override public void onFocusChange(View v, boolean hasFocus) { if (hasFocus) { LgqLogPlus.d(".......
  • 在软键盘中注意在监听edittext中使用android:imeOptions属性的时候,一定要对EditText设置 android:inputType 或者 设置 android:singleline=”true”在activity_main.xml文件中,定义了8个EditText,imeOptions...
  • 我们都知道,在登面,搜索等等有EditText控件的界面上,当用户输入完内容后,点击回车键执行逻辑会有非常好的用户体验,所以今天我们来学习如何监听EditText监听回车键并处理监听时发生了两次回调问题。 代码 首先...
  • Android之多EditText监听

    2019-03-26 19:33:03
    之前做个功能,需要监听多个EditText,有... * 解决多个EditText监听,造成死循环的bug */ @SuppressLint("AppCompatCustomView") public class ExtendedEditText extends EditText { private ArrayList<Tex...
  • EditText 监听内容变化

    千次阅读 2016-04-22 14:35:34
    EditText 监听内容变化 摘自:http://liangruijun.blog.51cto.com/3061169/729505/ 监听EditText的变化 使用EditText的addTextChangedListener(TextWatcher watcher)方法对EditText实现监听...
  • EditText监听工具类

    2018-05-21 20:07:06
    最近,封装了一个EditText监听工具类: 针对的场景是: 页面内有多个Editext,在页面底部有一个提交或者保存的按钮,需要根据所有的Editext的状态去显示颜色. 比如说: 上架商品页面,登录注册页面,页面的保存...
  • 多个editText监听事件

    千次阅读 2017-04-05 19:04:52
    今天做项目,一个界面中有多个editText,由于实现的逻辑基本相同,所有如果为每一个editText都写一个监听,会显得比较麻烦, ... * 重构editText监听事件 */ public class MyTextWatcher implements TextWat
  • @ Android 对多个EditText监听 RxJava的掌握 https://github.com/ReactiveX/RxJava/wiki/How-To-Use-RxJava 上面是官网连接,RXJava一直在升级,今天讲解我已我项目中用的版本为准。 gradle版本 api ‘io.reactivex:...
  • android EditText 监听复制粘贴等操作

    千次阅读 2016-07-11 14:46:48
    android EditText 监听 复制 粘贴 等操作  @Override  public boolean onTextContextMenuItem(int id) {  if (id == android.R.id.paste) {  ClipboardManager clip = (ClipboardManage
  • EditText 监听-----TextWatcher
  • 多个EditText监听

    2015-11-06 17:00:14
    注册时每个EditText里面都输入内容后 注册按钮才能点击
  • EditText监听问题详解

    2019-04-24 16:32:21
    相信大家在项目中多多少少都用过EditText这个控件吧,但是大家是否熟悉它的监听呢?最近阿Q在使用它的监听的过程中就碰到了几个问题,在这里整理一下,供小伙伴们参考。 首先呢我们先声明一下EditText这个控件: <...
  • EditText监听事件

    2016-10-15 11:16:43
    今天写一个项目需要用到EditText监听事件,当内容改变的时候,EditText的背景变化 implement TextWatcher; XXX.addTextChangedListener(this); /**  * EditText内容的变化监听,要实现三个方法,添加...
  • 解决 Adapter 多个 Item 存在 EditText 监听输入问题 -> EditTextWatcherAssist.java 方法 注释 bindListener 绑定事件 package dev.assist; import android.text.Editable; import android.text....
  • EditText监听粘贴内容

    2014-11-13 18:51:45
    EditText禁止粘贴内容输入,修改粘贴内容, 参考: 禁止EditText 输入粘贴版内容 http://blog.csdn.net/xiaobijia/article/details/41081595

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 29,012
精华内容 11,604
关键字:

edittext监听