我一直在开发一个Xamarin Android应用程序,我的活动包含多个edittexts。当我通过点击它来聚焦编辑文本时,会出现软输入面板,但我希望它始终保持隐藏状态。 我已经尝试使用底层代码,但这不起作用,我也尝试使用CurrentFocus而不是edittext。
InputMethodManager keyboard = (InputMethodManager)GetSystemService(Context.InputMethodService);
keyboard.HideSoftInputFromWindow(txtWerf.WindowToken, HideSoftInputFlags.None);
此外,我尝试在我的布局的xml和清单文件中使用windowsoftinputmode。
修改
<application android:label="WMS" android:icon="@drawable/Icon">
<activity android:name="Materiaal" android:windowSoftInputMode="stateAlwaysHidden"></activity>
</application>
有人作为主意吗?
答案 0 :(得分:0)
尝试以下适合我的代码。
您可以使用InputMethodManager强制Android隐藏虚拟键盘,调用hideSoftInputFromWindow,传入包含焦点视图的窗口的标记。
// Check if no view has focus:
View view = this.getCurrentFocus();
if (view != null) {
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
这将强制键盘在所有情况下都被隐藏 你甚至可以在你的活动中尝试清单。
android:windowSoftInputMode="stateAlwaysHidden"
答案 1 :(得分:0)
在每个Edittext控件上,您可以将.ShowSoftInputOnFocus设置为false,单击edittext时不会弹出键盘。
答案 2 :(得分:0)
或者您可以将活动属性与 WindowSoftInputMode 属性一起使用:
[Activity(WindowSoftInputMode = SoftInput.StateAlwaysHidden)]