zoukankan      html  css  js  c++  java
  • android中使用setOnKeyListener响应输入事件

    在界面中添加一个EditText输入框控件,需要在输入时响应输入事件,可以使用setOnKeyListener() 事件:

            final EditText editText = findViewById(R.id.editText1);
            editText.setOnKeyListener(new View.OnKeyListener() {
                @Override
                public boolean onKey(View v, int keyCode, KeyEvent event) {
                    Toast.makeText(MainActivity.this, editText.getText().toString(), Toast.LENGTH_SHORT).show();
                    return false;
                }
            });

    在执行的时候,发现每次都会响应两次事件,原来是每次按下及松开时都会执行一次,对应Action的ACTION_DOWN, ACTION_UP,针对这种情况,修改一下代码,改成只在松开时执行:

            final EditText editText = findViewById(R.id.editText1);
            editText.setOnKeyListener(new View.OnKeyListener() {
                @Override
                public boolean onKey(View v, int keyCode, KeyEvent event) {
                    if(event.getAction()==KeyEvent.ACTION_UP) {
                        Toast.makeText(MainActivity.this, editText.getText().toString(), Toast.LENGTH_SHORT).show();
                    }
                    
                    return false;
                }
            });
  • 相关阅读:
    Python并发编程—自定义线程类
    Python并发编程—线程对象属性
    syfomny 好教材....
    drupal_get_css -- drupal
    common.inc drupal
    date iso 8610
    js很好的教材
    user_load_by_name
    eck add form
    把一个表导入到另一个地方...
  • 原文地址:https://www.cnblogs.com/modou/p/10250777.html
Copyright © 2011-2022 走看看