我對 Andriod WebView 有一個奇怪的問題。我的網站的 Humberger 選單在我的移動瀏覽器中可以正常展開和關閉,但在我的 Android WebView 應用程式上,當單擊選單時它不起作用(不能完全展開以顯示選單項)。
我已經從 StackOverFlow 上的各種答案中嘗試了以下代碼行:
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setJavaScriptEnabled(true);
settings.setJavaScriptEnabled(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
移動瀏覽器正常作業:

Android WebView 應用程式無法正常作業

這是我的 Andriod WebView 應用程式代碼:
package com.app.pvm;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.webkit.WebSettings;
import android.webkit.WebView;
public class MainActivity extends AppCompatActivity {
private WebView webView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = findViewById(R.id.MyWebView);
webView.setWebChromeClient(new MyChromeClient());
webView.setWebViewClient(new BrowserClient());
WebSettings settings = webView.getSettings();
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setJavaScriptEnabled(true);
settings.setJavaScriptEnabled(true);
settings.setAllowFileAccess(true);
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
webView.loadUrl("https://test.app");
}
}
XML 代碼:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<WebView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@ id/MyWebView"/>
</LinearLayout>
BrowserClient 類代碼:
package com.app.pvm;
import android.graphics.Bitmap;
import android.webkit.WebResourceError;
import android.webkit.WebResourceRequest;
import android.webkit.WebView;
import android.webkit.WebViewClient;
class BrowserClient extends WebViewClient {
public BrowserClient(){
}
@Override
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
super.onReceivedError(view, request, error);
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
}
注意:我將 Andriod Studio 用于 WebView 應用程式。
uj5u.com熱心網友回復:
你WebView應該適合整個視窗,使用match_parent
<WebView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@ id/MyWebView"/>
wrap_content高度設定使得這個內部下拉選單被錯誤地測量,同時整個網頁內容拉伸WebView到其父級 ( LinearLayout) 的大小并變得可滾動
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/477369.html
上一篇:將(newIntent(Intent.ACTION_SENDTO)).setData(Uri.parse("mailto:")傳遞給intent.setSelector()在選擇器
