Rumah > Soal Jawab > teks badan
webview有时候加载不出网页,页面关掉再打开也不行,显示一片空白。放着不动,过一会,反而能打开网页。
当加载不出的时候,发现根本没有发起请求。
有大神知道原因吗?
阿神2017-04-17 17:50:28
WebView
Kawalan ini merupakan kawalan yang sangat penting dalam sistem Android
, dan ia tidak akan menyebabkan situasi yang disebut oleh poster. Apa yang mungkin dilihat oleh poster asal ialah paparan permukaan.
Apabila WebView
daripada loadUrl(String url)
dipanggil, WebView
mula memuatkan halaman web, tetapi apabila ia tidak dimuatkan, ia masih akan memaparkan latar belakang putih asalnya Halaman web akan dipaparkan hanya selepas ia dimuatkan . Ini mungkin bermakna paparan menjadi kosong dan ia mengambil sedikit masa sebelum halaman web boleh dibuka. Malah, ia sentiasa dimuatkan, tetapi ia dimuatkan dengan perlahan dan anda tidak dapat melihat sebarang perubahan.
Hos boleh menggunakan WebView.setWebViewClient
untuk menghantar WebViewClient
tersuai. Juga WebView.setWebChromeClient
. Gantikan beberapa fungsi ini:
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
//页面开始加载
}
@Override
public void onPageFinished(WebView view, String url) {
//页面加载完毕
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
//加载出现失败
super.onReceivedError(view, errorCode, description, failingUrl);
}
});
webView.setWebChromeClient(new WebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
//加载过程回调,progress是接受到的数据的百分比
}
});
Jika poster mengkonfigurasi WebView
seperti di atas, maka dalam loadUrl(String url)
, anda boleh melihat panggilan balik fungsi ini. Kandungan dalam soalan boleh dijawab daripada Log
.
天蓬老师2017-04-17 17:50:28
1. Saya benar-benar menghadapi situasi ini semalam
2. Analisis sebab: A. Saya cadangkan poster menggunakan Charles untuk menangkap paket
B.我的原因:加载url的时候,一下子激增了ajax请求与图片请求
C.我的解决方法:让前端的同学做一下分页加载以及懒加载,不要在打开url的瞬间发出那么多请求
巴扎黑2017-04-17 17:50:28
Ini memang berlaku, saya juga pernah menemuinya, dan mendapati bahawa jika anda tidak memanggil wv_viewerweb.removeAllViews();
// wv_viewerweb.destroy();
// wv_viewerweb = null; masalah tidak akan wujud
ringa_lee2017-04-17 17:50:28
Adakah masalah selesai? ? ? Saya juga terjebak, tolong beri saya penyelesaian...