网站菜单栏在移动浏览器中正常工作时无法与 WebView android 一起使用
Posted
技术标签:
【中文标题】网站菜单栏在移动浏览器中正常工作时无法与 WebView android 一起使用【英文标题】:Website menu bar not working with WebView android while working fine in mobile browser 【发布时间】:2018-05-01 19:06:36 【问题描述】:我正在开发 WebView 并使用 WebView android 打开一个网站。该网站的菜单栏在移动浏览器中工作正常,但是当我在 WebView android 中打开 URL/网站时,菜单栏不起作用。
在 Android WebView 中打开时(菜单栏无响应)
在移动浏览器中打开时
下面是我用来在 WebView 中打开 URL 的代码:
WebView mWebView = (WebView) findViewById(R.id.webview);
WebSettings mWebSettings = mWebView.getSettings();
mWebSettings.setjavascriptEnabled(true);
mWebSettings.setSupportZoom(false);
mWebView.setWebViewClient(new WebViewClient());
mWebView.setWebViewClient(new WebViewClient()
public boolean shouldOverrideUrlLoading(WebView view, String url)
view.loadUrl(url);
return true;
public void onPageFinished(WebView view, String url)
public void onReceivedError(WebView view, int errorCode, String descripti0on, String failingUrl)
);
mWebView.loadUrl("https://www.buyvipgift.com");
请告诉我哪里出错了!
【问题讨论】:
【参考方案1】:我在代码中添加了mWebSettings.setDomStorageEnabled(true)
这一行,现在可以正常工作了。
setDomStorageEnabled(boolean flag)
设置是否启用 DOM 存储 API。
因为,着陆页提供了可用于自定义colour
、font
和decorative image
的控件。当您选择不同的选项时,页面会立即更新;此外,您的选择存储在localStorage
,因此当您离开页面时,稍后再次加载您的选择会被记住。
此外,如果您在另一个选项卡中加载此页面,然后在登录页面中更改您的选择,您将看到在StorageEvent
被触发时输出的更新存储信息。
【讨论】:
tnx 非常兄弟【参考方案2】:通过添加这两行来为我工作:
mywebView.getSettings().setDomStorageEnabled(true);
mywebView.getSettings().setJavaScriptEnabled(true);
【讨论】:
【参考方案3】:是的,我有同样的问题,通过添加这些代码行它可以完美地工作。
public class MainActivity extends AppCompatActivity
private WebView websiteView;
@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
websiteView = (WebView) findViewById(R.id.websiteview);
WebSettings webSettings = websiteView.getSettings();
websiteView.getSettings().setDomStorageEnabled(true);
websiteView.getSettings().setJavaScriptEnabled(true);
webSettings.setJavaScriptEnabled(true);
websiteView.loadUrl("https://abdulrahmanayub.com/");
websiteView.setWebViewClient(new WebViewClient());
【讨论】:
以上是关于网站菜单栏在移动浏览器中正常工作时无法与 WebView android 一起使用的主要内容,如果未能解决你的问题,请参考以下文章