网站菜单栏在移动浏览器中正常工作时无法使用WebView android

时间:2017-11-17 22:29:51

标签: java android android-layout android-studio webview

我正在使用WebView并使用WebView android打开网站。网站的菜单栏在移动浏览器中工作正常但是当我在WebView android中打开URL /网站时,菜单栏不起作用。

在Android WebView中打开时(菜单栏不响应)

When URL open in android webview

在移动浏览器中打开

When opening in mobile browser in

下面是我用来在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");

请让我知道我哪里出错了!非常感谢你......

3 个答案:

答案 0 :(得分:6)

是的,我遇到了同样的问题,并且通过添加以下代码行使其工作正常。

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());

    }
}

答案 1 :(得分:2)

我在代码中添加了mWebSettings.setDomStorageEnabled(true)这一行,现在工作正常。

setDomStorageEnabled(boolean flag)

设置是否启用DOM存储API。

因为,着陆页提供了可用于自定义colourfontdecorative image的控件。当您选择不同的选项时,页面会立即更新;此外,您的选择存储在localStorage中,因此当您离开页面时,请稍后再次加载,您的选择会被记住。

此外,如果您在其他标签页中加载此页面,然后在目标网页中更改您的选项,您会看到在StorageEvent被触发时输出的更新存储信息。

答案 2 :(得分:0)

通过添加以下两行为我工作:

mywebView.getSettings().setDomStorageEnabled(true);
mywebView.getSettings().setJavaScriptEnabled(true);