VC 当EDIT失去焦点的同时,发送回车事件?

VC 当EDIT失去焦点的同时,发送回车事件


杨魅力
浏览 1189回答 3
3回答

牛魔王的故事

最省事儿的办法:去掉OK按钮上的default button属性,建一个新按钮,设置default 去掉visable,作为隐藏默认按钮,这个按钮会响应回车;在这个按钮的响应事件中,通过GetFocus获取焦点识别当前编辑框,并根据具体编辑框分别处理。正统办法:去掉默认按钮,重载CEdit为自己的编辑框类,重载PreTranslateMessage函数,处理回车;为每个edit绑定控件变量,设置基类为新编辑框类。

慕的地6264312

12345678910111213141516/**         * 设置发送消息的按钮和输入框 按下回车键,发送消息         */        editText = (EditText) findViewById(R.id.conversation_editText);        editText.setOnKeyListener(new OnKeyListener() {             @Override            public boolean onKey(View v, int keyCode, KeyEvent event) {                // 这两个条件必须同时成立,如果仅仅用了enter判断,就会执行两次                if (keyCode == KeyEvent.KEYCODE_ENTER && event.getAction() == KeyEvent.ACTION_DOWN) {                    // 执行发送消息等操作            return true;                }                return false;            }        });
打开App,查看更多内容
随时随地看视频慕课网APP