如何关闭对话框上的android键盘?
我的android应用程序中有一个打开的对话框,我有一个按钮,单击会关闭该对话框。问题是还有一个文本编辑字段,如果它已聚焦并且键盘正在显示,那么当我单击“取消”按钮时,对话框将消失,但键盘仍在显示 我还想关闭键盘 我四处搜索,寻找像这样的线索 但没有一个解决方案对我有效。顺便说一下,edittext是一种数字输入类型,如果这有什么不同的话 有人知道如何解决这个问题吗 谢谢如何关闭对话框上的android键盘?,android,keyboard,android-edittext,Android,Keyboard,Android Edittext,我的android应用程序中有一个打开的对话框,我有一个按钮,单击会关闭该对话框。问题是还有一个文本编辑字段,如果它已聚焦并且键盘正在显示,那么当我单击“取消”按钮时,对话框将消失,但键盘仍在显示 我还想关闭键盘 我四处搜索,寻找像这样的线索 但没有一个解决方案对我有效。顺便说一下,edittext是一种数字输入类型,如果这有什么不同的话 有人知道如何解决这个问题吗 谢谢 public void HandleTeamManagement() { final Dialog teamDia
public void HandleTeamManagement() {
final Dialog teamDialog = new Dialog(this);
teamDialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
teamDialog.setContentView(R.layout.dialog_team_management);
final EditText mergeNum = (EditText) teamDialog.findViewById(R.id.group);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(mergeNum.getWindowToken(), 0);
// Setting Negative "NO" Button
Button cancelButton = (Button) teamDialog.findViewById(R.id.cancel);
cancelButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
teamDialog.dismiss();
}
});
// Showing Alert Dialog
teamDialog.show();
}
您可以在此处找到解决方案: 编辑:添加代码 试试这个……它对我有用
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
if (editText!= null && getActivity() != null) {
InputMethodManager imm = (InputMethodManager) getActivity()
.getSystemService(
Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(
editText.getWindowToken(), 0);
}
}
}, 1000);
您的意思是以下内容不适用于您:
InputMethodManager imm=(InputMethodManager)getSystemService(Context.INPUT\u METHOD\u SERVICE);imm.hideSoftInputFromWindow(yourEditText.getWindowToken(),0)代码>?@omega:你是不是搞笑地打开了键盘。?键盘是通过关注编辑文本来打开的,所以我不会强行打开它。我在上面添加了代码。什么是处理程序?我从哪里获得它?@omega:我添加了处理程序代码。只需将其粘贴到代码中,并用您的姓名替换editText,然后重试。