网站菜单栏无法在移动浏览器中正常运行时与WebView android一起使用

Has*_*mil 1 java android webview android-layout

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

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

在Android WebView中打开URL时

在移动浏览器中打开时

在移动浏览器中打开时

下面是我用来在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");
Run Code Online (Sandbox Code Playgroud)

请让我知道我要去哪里错了!

Has*_*mil 7

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

setDomStorageEnabled(boolean flag)
Run Code Online (Sandbox Code Playgroud)

设置是否启用 DOM 存储 API。

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

此外,如果您在另一个选项卡中加载此页面,然后在登录页面中更改您的选择,您将看到在StorageEvent触发时输出的更新存储信息。


小智 5

通过添加这两行对我有用:

mywebView.getSettings().setDomStorageEnabled(true);
mywebView.getSettings().setJavaScriptEnabled(true);
Run Code Online (Sandbox Code Playgroud)


Abd*_*yub 5

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

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

    }
}
Run Code Online (Sandbox Code Playgroud)