WebViewでタイムアウト値を設定する方法はありますか?URLが遅すぎて応答できない場合は、WebViewをタイムアウトにします。
26015 次
3 に答える
11
getProgress ()を呼び出して現在のページの進行状況をチェックするタイマーを設定することでこれを行うことができ、指定された時間が経過してもしきい値よりも小さい場合は、現在のページの読み込みを閉じることができます。
于 2010-11-29T10:53:41.727 に答える
5
の代わりにのonLoadResource
メソッドを使用できます。このような:WebViewClient
Timer
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return false;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
progressDialog.show();
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
Log.d("WEBCLIENT", "onPageFinished");
}
@Override
public void onLoadResource(WebView view, String url) {
super.onLoadResource(view, url);
Log.d("WEBCLIENT","onLoadResource");
if(webView.getProgress() == 100) {
progressDialog.dismiss();
}
}
}
于 2015-07-21T11:05:58.400 に答える
1
私が使う
@Override
public void onReceivedError(WebView view, int errorCod,String description, String failingUrl) {
final Dialog dialog = new Dialog(MainActivity.this, android.R.style.Theme_NoTitleBar_Fullscreen);
dialog.setContentView(R.layout.alert_dialog);
Button btTryAgain = dialog.findViewById(R.id.bt_try_again);
btTryAgain.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v){
recreate();
}
});
dialog.show();
//Toast with error conection
Toast.makeText(getApplicationContext(), "Your Internet Connection May not be active Or " + description , Toast.LENGTH_LONG).show();
}
ここで、-alert_dialog-は、再試行するボタンのあるレイアウトです。
于 2020-12-27T22:48:52.263 に答える