Dmy*_*nko 40 keyboard android hide soft-keyboard android-softkeyboard
我想在AlertDialog解雇后隐藏软键盘,但它仍然可见.这是我的代码:
alert = new AlertDialog.Builder(MyActivity.this);
imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
alert.setOnDismissListener(new DialogInterface.OnDismissListener() {
@Override
public void onDismiss(DialogInterface dialog) {
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
}
});
Run Code Online (Sandbox Code Playgroud)
小智 89
在Manifest xml中
android:windowSoftInputMode="stateAlwaysHidden"
Run Code Online (Sandbox Code Playgroud)
它会在Dismiss of上自动隐藏软键盘
Dialog
Nor*_*haw 15
我遇到了同样的问题.通过这样做解决了它.它不需要任何参考:
imm.hideSoftInputFromWindow(getWindow().getDecorView()
.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
Run Code Online (Sandbox Code Playgroud)
关闭警报对话框时遇到了类似的问题.这似乎对我有用.
在DialogFragment中
public static void closeKB(final View view)
{
caller.postDelayed(new Runnable() {
@Override
public void run() {
InputMethodManager imm = (InputMethodManager) view.getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager.HIDE_NOT_ALWAYS);
}
}, 1);
}
@Override
public void onDismiss(DialogInterface dialog)
{
super.onDismiss(dialog);
View view = getActivity().getCurrentFocus();
if (view != null)
{
closeKB(view);
}
}
Run Code Online (Sandbox Code Playgroud)
我用这个方法:
IBinder token = searchTextEntry.getWindowToken();
( ( InputMethodManager ) getSystemService( Context.INPUT_METHOD_SERVICE ) ).hideSoftInputFromWindow( token, 0 );
Run Code Online (Sandbox Code Playgroud)
searchTextEntry
我的EditText
参考名称在哪里.
归档时间: |
|
查看次数: |
30937 次 |
最近记录: |