11

我怎样才能得到一个片段来保存它的状态?我已经尝试了一切,但没有运气,没有任何效果。

我试过添加:

public void onSaveInstanceState(Bundle outState) {
   super.onSaveInstanceState(outState);
   myWebView.saveState(outState);
   Log.w("///////", "onSaveInstanceState");

}

但这永远不会被调用。

有任何想法吗?


我现在正在尝试恢复 Web 视图的状态:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

     View mainView = (View) inflater.inflate(R.layout.frag_b, container, false);
     myWebView = (WebView) mainView.findViewById(R.id.webviewtest);
     myWebView.setWebViewClient(new MyWebViewClient());
     myWebView.getSettings().setPluginsEnabled(true);
     myWebView.getSettings().setBuiltInZoomControls(false); 
     myWebView.getSettings().setSupportZoom(false);
     myWebView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);   
     myWebView.getSettings().setAllowFileAccess(true); 
     myWebView.getSettings().setDomStorageEnabled(true);
     myWebView.loadUrl("http://www.google.com");   
     myWebView.setId(1);
     myWebView.restoreState(savedInstanceState);
     Log.w("///////", "onCreateView");

    return mainView;
}

但以上不起作用,有什么想法吗?

4

1 回答 1

5

你有没有看过这个:片段的 onSaveInstanceState() 永远不会被调用

您需要确保调用super.onSaveInstanceState(Bundle)您的FragmentActivity.

于 2012-08-06T15:42:55.913 回答