我创建了一个基本的webview应用程序... 它有一个进度栏,在页面完全加载后隐藏, 最重要的是,我创建了一个没有库的FAB,即使用ImageButton ...... 我想在页面加载后显示FAB&不是每次都(例如离线时) 怎么实现呢? 这里是Code pic ...
答案 0 :(得分:0)
实现WebViewClient并扩展onPageFinished(),如下所示,
mWebView.setWebViewClient(new WebViewClient() {public void onPageFinished(WebView view, String url) {
// do your stuff here
fab.setVisibility(View.VISIBLE);
}});
答案 1 :(得分:0)
这是我的解决方案,用于在加载页面时隐藏进度对话框。
webView.setWebViewClient(new WebViewClient() {
private int webViewPreviousState;
private final int PAGE_STARTED = 0x1;
private final int PAGE_REDIRECTED = 0x2;
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
webViewPreviousState = PAGE_STARTED;
if (dialog == null || !dialog.isShowing())
dialog = ProgressDialog.show(MainActivity.this, "", getString(R.string.dialog_loading), true, true,
new DialogInterface.OnCancelListener() {
@Override
public void onCancel(DialogInterface dialog) {
// relax
}
});
}
@Override
public void onPageFinished(WebView view, String url) {
if (webViewPreviousState == PAGE_STARTED) {
dialog.dismiss();
dialog = null;
}
}
});
}