我有一个TableLayout,我在OnCreate的代码中动态添加内容。一旦Activity创建,它就会专注于我动态创建的EditTexts之一并显示键盘。在用户专门按下其中一个EditTexts之前,我不希望键盘显示。我试过了:
InputMethodManager input = (InputMethodManager) GetSystemService(InputMethodService);
input.HideSoftInputFromWindow(CurrentFocus.WindowToken, 0);
但是键盘仍然显示,并且CurrentFocus返回null。因此,当我尝试将焦点专门指向另一个视图,然后执行上述操作时:
InputMethodManager input = (InputMethodManager) GetSystemService(InputMethodService);
title.FindFocus();
input.HideSoftInputFromWindow(CurrentFocus.WindowToken, 0);
CurrentFocus仍为null,键盘仍然显示。 title是一个TextView,我已经在代码中有一个实例。我可以不专注于TextView,还是我还缺少其他东西?
答案 0 :(得分:25)
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);
答案 1 :(得分:10)
AndroidManifest.xml
文件android:windowSoftInputMode="stateHidden"
例如:
<activity
android:name=".package.example.MyActivity"
android:windowSoftInputMode="stateHidden"/>
答案 2 :(得分:0)
您要在其中隐藏键盘的活动中添加以下内容
android:windowSoftInputMode =“ stateHidden | adjustResize | stateAlwaysHidden”