关于如何以编程方式显示/隐藏软键盘有很多问题。
但是,众所周知,android 后退按钮会导致键盘消失。 有没有办法阻止用户通过按下后退按钮关闭键盘?
我试图捕获后退按钮,但是当键盘显示在我的 Activity 中的 onKeyDown 时,按下后退键并且软键盘可见时不会调用。
如有任何建议,我们将不胜感激。
最佳答案
我找到了解决方案:
public class KeyBoardHolder extends EditText {
public KeyBoardHolder(Context context) {
super(context);
}
public KeyBoardHolder(Context context, AttributeSet attrs) {
super(context, attrs);
}
public KeyBoardHolder(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public KeyBoardHolder(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) {
super(context, attrs, defStyleAttr, defStyleRes);
}
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
return true;
}
return false;
}
}
这可以防止键盘被后退按钮关闭。
关于android - 防止软键盘被关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3366270/