Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/206.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 编辑文本OnKeyDown_Android - Fatal编程技术网

Android 编辑文本OnKeyDown

Android 编辑文本OnKeyDown,android,Android,我以编程方式声明了一个EditText(即不是XML),并希望对其应用OnKeyDown处理程序。显示的代码不起作用。上下文是,我试图从键盘捕获一个短字符串,它不应该包括控制字符(我从回车键开始)。也许有更好的办法 谢谢 public EditText ttsymbol; /** Called when the activity is first created. */ @Override public boolean onKeyDown(int keyCode, KeyEve

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

谢谢

        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绑定到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;
            }
        });

谢谢,这对我来说很好,但对编译器来说不太好:在这个令牌之后应该出现令牌“setonKeyListener”VariableDeclaratorId上的语法错误。您是否使用:
ttsymbol=new EditText(context)
?在此之后,您应该能够添加onKeyListener。只需将“myEditText”替换为您的姓名,例如“ttsymbol”<代码>公共EditText ttsymbol=新的EditText(getBaseContext());tsymbol.setOnKeyListener(新的OnKeyListener(){标记“setOnKeyListener”上的语法错误,=您在评论中编写了
tsymbol.setOnKeyListener
而不是
ttsymbol.setOnKeyListener
此标记后应为,我发布的示例对我很好。请记住,此方法仅保证适用于硬件键盘,软件键盘没有义务释放这些事件