Android Phonegap儿童浏览器插件:禁用/隐藏Locationbar中的URL,但不禁用后退/前进/退出按钮
有没有办法隐藏或禁用locationbar中的URL字段?在我的例子中,该设备是一个平板电脑,作为kiosk浏览器运行,因此只允许一个URL 我通过将ChildBrowser.java中的代码更改为Android Phonegap儿童浏览器插件:禁用/隐藏Locationbar中的URL,但不禁用后退/前进/退出按钮,android,cordova,phonegap-plugins,Android,Cordova,Phonegap Plugins,有没有办法隐藏或禁用locationbar中的URL字段?在我的例子中,该设备是一个平板电脑,作为kiosk浏览器运行,因此只允许一个URL 我通过将ChildBrowser.java中的代码更改为 private void navigate(String url) { InputMethodManager imm = (InputMethodManager)this.ctx.getSystemService(Context.INPUT_METHOD_SERVICE); imm.
private void navigate(String url) {
InputMethodManager imm = (InputMethodManager)this.ctx.getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(edittext.getWindowToken(), 0);
if (!url.startsWith("http")) {
this.webview.loadUrl("http://" + url);
}
this.webview.loadUrl("http://www.my-only-allowed-site.example.org");
this.webview.requestFocus();
}
这很管用,但不太好。您仍然可以看到URL。我想要任何一种可能的解决方案:1) 完全隐藏URL字段
2) 单击URL字段时隐藏软键盘
3) 将URL字体颜色设置为黑色 有什么想法吗?
提前感谢我对Phonegap一无所知,但我假设您使用的是标准的Android
WebView
如果您看到一个URL栏,那么它通常意味着正在调用默认的系统浏览器来处理页面的加载。要阻止此操作,请按如下方式设置WebViewClient
this.webview.setWebViewClient(new WebViewClient() {
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return false;
}
});
宿主应用程序调用shouldOverrideUrlLoading(…)
方法,查看是否应通过使用活动管理器查找合适的应用程序(通常是股票浏览器应用程序)来覆盖加载。返回false
意味着WebView
实例想要处理自己的URL加载,而您根本看不到URL栏
编辑:如果修复了它,但也松开了导航按钮,那么我建议您维护自己的历史记录集合,并提供自己的后退/前进/退出按钮。如果您修改插件的源代码,您可以通过修改插件的源代码隐藏url字段和关闭按钮,只需注释掉以下行:
toolbar.addView(back); //shows the back button
toolbar.addView(forward); //shows the forward button
//toolbar.addView(edittext); //shows the URL - comment this line out to hide the URL
toolbar.addView(close); //shows the close button
编辑:哎呀,我刚从你的评论中看到,你用同样的方式解决了这个问题 谢谢你的提示。我刚刚删除了“toolbar.addView(edittext);”一行从Childbrowser.java开始,它就开始工作了。对于ios平台,插件中要修改什么