Home » Android » android – EditText OnKeyDown

android – EditText OnKeyDown

Posted by: admin June 15, 2020 Leave a comment

Questions:

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; 
  }
How to&Answers:

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