我已经以编程方式声明了EditText(即,不在XML中),并希望对其应用OnKeyDown处理程序。显示的代码不起作用。上下文是,我正在尝试从键盘捕获一个短字符串,该字符串不应包含控制字符(我从Enter键开始)。也许有更好的方法?

谢谢!

        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;
  }

最佳答案

您必须将onKeyListener绑定(bind)到您的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;
            }
        });

关于android - EditText OnKeyDown,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7305972/

10-09 15:41
查看更多