软键盘输入键事件句柄 [英] Soft keyboard enter key event handle

查看:54
本文介绍了软键盘输入键事件句柄的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在软键盘上做一些事情,按Enter键.请参阅下面的代码和输出.它执行两次,但是我希望它只能执行一次.如何解决?

I want to do some stuff on soft keyboard enter key press. See my code and output below. It executes twice, but I want it to be executed only once. How to fix it?

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

这篇关于软键盘输入键事件句柄的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆