码迷,mamicode.com
首页 > 移动开发 > 详细

android 通过监听edittext实现button的点击事件

时间:2017-08-12 10:07:25      阅读:480      评论:0      收藏:0      [点我收藏+]

标签:监听   edittext   

如果你没有接第三方的输入设备,那么点击按钮只需找到你的button然后:

button.performClick();

就可以了


那么如果你用到第三方输入法,有些时候监听就没有这么好使了:

以下场景为:

外接输入服务,直接给我丢一串字符,我拿到字符后执行按钮事件

代码如下:

  editText1.addTextChangedListener(new TextWatcher(){

            @Override
            public void afterTextChanged(Editable s) {
                Log.d(TAG, "afterTextChanged");
            }

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                                          int after) {
                Log.d(TAG, "beforeTextChanged:" + s + "-" + start + "-" + count + "-" + after);

            }

            @Override
            public void onTextChanged(CharSequence s, int start, int before,
                                      int count) {

                if(s.length()>5) {


                    Log.d(TAG, "onTextChanged:" + s + "-" + "-" + start + "-" + before + "-" + count);

               
                    Toast.makeText(context, s + "", Toast.LENGTH_LONG).show();
//
                    EditText editText3 = (EditText) findViewById(R.id.et_3);

                    Button button = (Button) findViewById(R.id.bu_1);

                    button.performClick();

                }
            }

        });

需要注意的是,

onTextChanged

方法内必须给一个限定参数,否则会不断的执行,形成死循环,程序就会意外退出。

我这边写的则是 

if(s.length()>5)


android 通过监听edittext实现button的点击事件

标签:监听   edittext   

原文地址:http://10516822.blog.51cto.com/10506822/1955513

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!