2

我们正在编写适用于 Android 的应用程序。它WebView包含 Html5 页面。我们正在使用loadUrl()webview 的方法,以便将一些本机操作系统变量推送到 html,例如:

webview.loadUrl("javascript:myJavascriptFunc('" + myAndroidOSVar + "');");

它工作得很好。但是,如果我们在被调用时从页面输入输入loadUrl(),我们就会失去输入字段的焦点,即使调用的 javascript 函数只是更改了缓存上的标志。

你知道用其他方式调用 Javascript 函数WebView而不是loadUrl()吗?

4

3 回答 3

0

这是您可以避免该问题的最接近的方法:WebView 在 loadUrl() 期间隐藏软键盘,这意味着在调用 javascript 时键盘无法保持打开状态

基本上,您loadUrl通过在本机端排队命令并每隔一段时间让 JS 桥获取命令并使用 JSeval()或其他东西执行来避免调用。

于 2013-01-27T05:30:20.633 回答
0

如果您在 web 视图中有多个字段,我不确定它会如何响应,但我想出了一个解决方法来保持键盘显示:https ://stackoverflow.com/a/18776064/513038 。这可能值得一试。

于 2013-09-19T02:53:25.137 回答
-1

是的,有一种方法可以将 a 添加JavaScriptInterface到您的 WebView 中,请参阅本教程以获取更多说明和详细信息

于 2013-01-04T15:03:29.683 回答