的EditText的onkeydown [英] EditText OnKeyDown

查看:891
本文介绍了的EditText的onkeydown的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我宣布一个EditText编程方式(即不是在XML),并要一的onkeydown处理程序适用于它。显示的code不起作用。上下文是,我试图捕获来自键盘,这不应该包括控制符(我已经开始与回车键)的短字符串。也许有更好的办法?

谢谢!

 公开的EditText ttsymbol;

/ **第一次创建活动时调用。 * /
@覆盖
公共布尔的onkeydown(INT键code,KeyEvent的事件){
        开关(钥匙code){
        案例KeyEvent.KEY code_ENTER:
            // IGNOREenter关键!
            返回true;

        }返回false;
  }
 

解决方案

您必须将onKeyListener绑定到你的EDITTEXT。

  myEditText.setOnKeyListener(新OnKeyListener(){
            @覆盖
            公共布尔onKey(视图V,INT关键code,KeyEvent的事件){
                如果(event.getAction()== KeyEvent.ACTION_DOWN和放大器;&放大器;关键code == KeyEvent.KEY code_ENTER){
                    //做的东西在这里
                    返回true;
                }
                返回false;
            }
        });
 

I have declared an EditText programmatically (i.e. not in XML), and want to apply an OnKeyDown handler to it. The code shown does not work. The context is, I'm trying to capture a short string from the keyboard, which should not include control characters (I've started with the Enter key). Maybe there is a better way?

Thanks!

        public EditText ttsymbol;

/** Called when the activity is first created. */
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) { 
        switch (keyCode) { 
        case KeyEvent.KEYCODE_ENTER: 
            // IGNOREenter key!! 
            return true; 

        }return false; 
  }

解决方案

You must bind the onKeyListener to your editText.

myEditText.setOnKeyListener(new OnKeyListener() {           
            @Override
            public boolean onKey(View v, int keyCode, KeyEvent event) {
                if (event.getAction()==KeyEvent.ACTION_DOWN && keyCode == KeyEvent.KEYCODE_ENTER) {
                    //do something here
                    return true;
                }
                return false;
            }
        });

这篇关于的EditText的onkeydown的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆