我在创建WebView
和加载URL的片段中有一个MapView
。当MapView可见时,WebView onPageFinished不会被调用
如果隐藏MapView
,则WebView
加载的不正确(android:visibility="gone"
)。但是当它被显示时,将调用WebView的onPageStarted()
,但从不会调用onPageFinished()
。
的MapView:
<com.google.android.gms.maps.MapView
android:layout_width="match_parent"
android:layout_height="200dp"
android:visibility="gone"
android:id="@+id/mapView" />
的WebView:
webView = new WebView(getActivity());
webView.addJavascriptInterface(this, "scraper");
WebSettings webSettings = webView.getSettings();
webSettings.setUserAgentString("Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0");
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webView.setWebViewClient(new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return true;
}
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
super.onPageStarted(view, url, favicon);
System.out.println("page start called");
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
System.out.println("page finished called");
}
});
webView.loadUrl("http://denver.craigslist.org/apa/5436947521.html");
的小样本:
如果我离开地图查看隐藏,WebView加载正常。
只有登录消息后
onPageStarted()
- d/cr_Ime:[ImeAdapter.java:587]分离在
onReceivedError()
Nothing或任何其他误差回调。
基本上你有一个片段内的MapView和WebView。我对么 ? –
只是片段内的MapView。 Webview被用作'webView = new WebView(getActivity());'所以你可以说它属于Activity而不是这个特定的片段。 –
你有没有试过我的解决方案? –