12

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

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

我也尝试使用此处的 javascript 接口,但在 Android 2.3.x 上存在 javascript-java 桥崩溃问题。(问题链接)。所以我现在仍然没有一个好的解决方案。请帮忙。

提前感谢您的帮助。

4

1 回答 1

1

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

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

    • 如果您选择这种方式,如果没有自动完成,请确保将设置恢复正​​常。我以前没有使用过它,也无法告诉你它的行为,但请记住这一点!您不希望用户回复他们在使用您的应用程序时收到的文本只是为了禁用他们的键盘:)


  • 您可以使用类似于以下链接的内容。我还没有非常彻底地研究它(tl;dr),但他创建了一个自定义视图,从它扩展android.inputmethodservice.KeyboardView并使用它。


于 2012-07-23T06:23:30.707 回答