[英]Detect when loading of someone else's web page into webview is done with jQuery
[英]Show Webview when page completly done loading?
为简单起见,假设我有1个活动,其中包含几个textViews,一个progressSpinner和一个webView。
webView可见性设置为“ gone”,其他所有设置为可见。 当页面加载完成并且要删除的2个div隐藏时,我想隐藏所有可见项并显示完全加载的webView。
但是,当我运行它时,我看到了所有可见的项目,此时webView没有显示(很好)。 几秒钟后,可见的项目消失,出现空白的webView(不应发生),然后加载页面,然后隐藏了2个div。
我想向用户隐藏此内容,如何将其设置为仅在页面完全完成加载且2个div隐藏后才显示webView?
public void onPageFinished(WebView view, String url) {
webview.loadUrl("javascript:$('#MainMenu').hide()");
webview.loadUrl("javascript:$('#EmployeeDashboard').hide()");
android.os.SystemClock.sleep(2500); // My attempt to allow the divs to be hidden before it's displayed to the user
findViewById(R.id.progressSpinner).setVisibility(View.GONE);
findViewById(R.id.imageView1).setVisibility(View.GONE);
findViewById(R.id.textView1).setVisibility(View.GONE);
findViewById(R.id.textView2).setVisibility(View.GONE);
findViewById(R.id.tvLoading).setVisibility(View.GONE);
findViewById(R.id.webview).setVisibility(View.VISIBLE);
}
在xml中,我有:
<WebView
android:id="@+id/webview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"
android:visibility="gone" />
我假设您正在创建Webview对象,然后调用loadUrl(...)
之后,不要将contentView设置为webView,而是将其设置为视图/图形/在加载时要显示的任何内容。
在您的onPageFinished中,将setContentView调用到您的webView。
MyWebView myWebView = new MyWebView();
myWebView.loadUrl ("http://whatever.com/goes/here");
setContentView(R.loadingurlspinner);
然后在你的onPageFinished()中
//stuff you have above
setContentView(myWebView);
发现我由于重定向而遇到麻烦,这对我有所帮助: 如何侦听完成加载URL的WebView?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.