[英]Show software keyboard after tap button
用户单击按钮后,我需要显示软件键盘。 现在,我将隐藏键盘并在用户单击按钮后显示它,但是当用户单击“编辑文本”时,键盘将显示其自身。 我有两个按钮,当用户单击第一个按钮时,他看到软件键盘,当他单击第二个按钮时,软件键盘被隐藏,并且他看到控件片段,该片段控制edittext。 当用户看到控件片段并点击以获取编辑文本时,将显示软键盘。 我需要不要显示此软键盘。 仅当用户点击第一个按钮时,才显示软键盘
我如何才能停止显示软键盘,但是单击该按钮后它仍然可以工作?
设置editText.setFocusable(false);
初始化并单击按钮,使用editText.setFocusable(true);
和editText.requestFocus();
这将为您提供帮助。
editText.setInputType(InputType.TYPE_NULL);
editText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
dialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
}
}
});
要强制显示软键盘,可以使用
EditText yourEditText= (EditText) findViewById(R.id.yourEditText);
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(yourEditText, InputMethodManager.SHOW_IMPLICIT);
而要取消对EditText的关注,可悲的是,您需要一个虚拟View来获取焦点。
我希望这可以帮助您关闭它
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.