我有一個webView,在那裏我顯示從後端獲取的HTML。
我的問題是,我正在嘗試顯示一個加載消息,並在頁面完成後才顯示內容。 爲此,我嘗試使用onPageFinished
,這是winda的工作原理,但並不完全,因爲它是在數據獲取後調用的,但在顯示頁面之前調用,所以我仍然顯示大約1秒的空白屏幕,最後才顯示HTML。如何在完成顯示內容後才能看到WebView?
public void onPageFinished (WebView view, String url)
在API級別1 通知完成頁面加載主機應用程序。這種方法僅適用於主框架。當onPageFinished()被調用時,渲染圖片可能還沒有被更新。要獲取新圖片的通知,請使用onNewPicture(WebView,Picture)。
的問題是,onNewPicture(WebView, Picture)
是deprecated
所以我的問題是,有沒有辦法知道什麼時候該頁面完成,也充分顯示?
這裏是我的代碼:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.messageId = this.getIntent().getStringExtra(ITEM_ID_KEY);
this.setUpActionBar();
this.setContentView(R.layout.activity_inbox_item_detail);
WebView view = (WebView) this.findViewById(R.id.webview);
view.setWebViewClient(new WebViewClient() {
public void onPageFinished(WebView view, String url) {
view.setVisibility(View.VISIBLE);
}
});
this.fetchInboxDetailsTask(this.messageId);
}
thia傢伙之一http://stackoverflow.com/questions/3149216/how-to-listen-for-a-webview-finishing-loading-a-url-in-android說你必須設置一個新的WebViewClient並覆蓋你在那裏說的那個方法。 – eduyayo 2014-09-30 21:40:12