Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/231.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 软键盘输入键事件句柄_Android - Fatal编程技术网

Android 软键盘输入键事件句柄

Android 软键盘输入键事件句柄,android,Android,我想在软键盘上做一些事情,按enter键。请参阅下面我的代码和输出。它执行两次,但我希望它只执行一次。如何修复它 public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); txt = (EditText)findViewById(R.id.txt); txt.setOnKeyListener

我想在软键盘上做一些事情,按enter键。请参阅下面我的代码和输出。它执行两次,但我希望它只执行一次。如何修复它

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    txt = (EditText)findViewById(R.id.txt);
    txt.setOnKeyListener(new OnKeyListener() {

        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            if (keyCode == KeyEvent.KEYCODE_ENTER) {
                Log.e("test","--------- on enter");
                return false;
            }
            return false;
        }
    });
}

最好的方法:

if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN) {
    Log.d(TAG, "enter_key_called");
}

应该改为采取行动,这样用户就可以取消我移除他或她的手指的活动了?并为这些密钥添加KeyEvent.KEYCODE\u DPAD\u CENTER.:
在将硬件密钥调度到视图时调用。
。这对软键盘不起作用。在EditText视图上设置inputType=“text”可使我对软键盘起作用