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!! 开发者_JAVA百科
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;
}
});
精彩评论