如何在Android webview中完全禁用所有输入的软键盘

时间:2012-07-23 05:26:09

标签: javascript android cordova android-webview android-websettings

我正在使用phonegap为Android开发一个网络应用程序,因为我将自己的HTML键盘,我需要禁用Android的系统键盘,防止它出现在用户点击任何文本输入字段时。我不想使用只读输入字段或onblur(),因为我希望将光标放在文本字段中,这样用户可以在输入输入时移动光标位置。

所以我想在默认情况下完全禁用Android的键盘,我尝试将android:windowSoftInputMode="stateAlwaysHidden"添加到manifest.xml,但这不起作用。

我也尝试使用here的javascript界面​​,但Android 2.3.x上存在javascript-java桥崩溃问题。(link to issue)。所以我现在还没有一个好的解决方案。请帮忙。

提前感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

好的,你有几个选择!您可以尝试使用以下方法完全禁用键盘:

  • getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

    • 如果选择这种方式,请务必将设置恢复为正常状态(如果没有自动完成)。我之前没有使用它,也无法告诉你它是如何表现的,但请记住这一点!您不希望用户在使用您的应用时仅回复他们收到的文字以禁用其键盘:)


  • 您可以使用与以下链接类似的内容。我没有彻底挖掘它(tl; dr),但他创建了一个自android.inputmethodservice.KeyboardView延伸的自定义视图,并使用它。