2014-06-05 30 views
1

我正在用webviews製作應用程序。 我只有一個包含 FrameLayout的活動來動態添加片段。如何防止當頂部的另一個片段關閉時重新加載片段中的webView

每個片段都包含一個webView。

一切工作正常,但是當我從堆棧中刪除片段 ,在 頂部堆疊的片段的web視圖重新加載,因此HTML的腳本 裏面的內容再次被調用。

restoreState()方法不起作用。

這是片段的onCreateView:

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 
    view = inflater.inflate(R.layout.wv_container, container, false); 
    webView = (WebView)view.findViewById(R.id.webviewcontainer); 
    if(webViewBundle == null) 
     webView.loadUrl("file:///android_asset/www/main.html"); 
    else 
     webView.restoreState(webViewBundle); 
    return view; 
} 

這是在onPause()方法:

@Override 
public void onPause() { 
    super.onPause(); 
    webViewBundle = new Bundle(); 
    webViewContent.saveState(webViewBundle); 
} 

我應該如何防止頁面重新加載我的情況? 我不想用標誌或類似的東西來破解html。

在此先感謝!

回答

1

您的中的saveState方法返回WebBackForwardList,其中包含WebHistory項目的列表。這些基本上是來自最近訪問過的頁面的標題,網址和圖標。它不會緩存下載的網址的內容。請參閱saveWebArchive

相關問題