我需要在用户点击按钮后显示软件键盘。现在我隐藏键盘并在用户点击按钮后显示它,但当用户点击编辑文本时,键盘会显示自己。 我有两个按钮,当用户点击第一个按钮时他看到了软件键盘,当他点击第二个按钮时,软件键盘正在隐藏,他看到控制片段,它控制着edittext。当用户看到控制片段并点击edittext时,会显示softwear键盘。我需要这个不显示这个软装键盘。只有当用户点击第一个按钮
时,才会显示Softwear键盘如何停止显示软键盘,但单击按钮后它仍然有效?
答案 0 :(得分:0)
设置editText.setFocusable(false);
首字母,然后点击按钮使用editText.setFocusable(true);
和editText.requestFocus();
答案 1 :(得分:0)
这会对你有帮助。
editText.setInputType(InputType.TYPE_NULL);
答案 2 :(得分:0)
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的关注,可悲的是你需要一个虚拟视图来抓住焦点。
我希望这会有所帮助 要关闭它,您可以使用
InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(yourEditText.getWindowToken(), 0);