在EditText焦点

时间:2016-01-07 11:40:59

标签: android .net xamarin soft-input-panel

我一直在开发一个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>

有人作为主意吗?

3 个答案:

答案 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)]