0

我想知道当按下后退按钮隐藏内置键盘时触发的事件。我想在按下后退按钮隐藏键盘时添加一个视图。我也在按下键盘的 ENTER 键时添加一个视图但是当按下后退按钮隐藏键盘时,我也想做同样的事情。我尝试过的都在这里。

public boolean onKey(View v, int keyCode, KeyEvent event) {
    // TODO Auto-generated method stub
    if (event.getAction() == KeyEvent.ACTION_DOWN) {
        switch (keyCode) {
        case KeyEvent.KEYCODE_DPAD_CENTER:
        case KeyEvent.KEYCODE_ENTER:

            InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
            imm.hideSoftInputFromWindow(v.getApplicationWindowToken(), 0);
            String string = text.getText().toString();
            if (string.trim().equals("")) {
                image_view.removeView(text);
            } else {

                text.setCursorVisible(false);
                text.setDrawingCacheEnabled(true);
                text.buildDrawingCache();

                Bitmap bmp_text = Bitmap.createBitmap(text
                        .getDrawingCache());
                view = new ZoomRotateImage(ImageEditing.this, bmp_text);
                text.setDrawingCacheEnabled(false);
                image_view.removeView(text);
                image_view.addView(view);
                getUpdatedImage();
            }
            return true;

        default:
            break;
        }
    }
    return false;
}

它工作正常..现在我只想在按下后退按钮以隐藏键盘时实现相同的功能。

提前致谢...

4

1 回答 1

0

按下设备上的事件返回按钮并隐藏软键盘,如下所示:

 @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if ((keyCode == KeyEvent.KEYCODE_BACK)) {
        // hide keyboard here
                  InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
                 imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
    } else
        return;

}
于 2013-04-16T09:59:34.457 回答