【问题标题】:Webview is getting reloaded when app goes into background Xamarin当应用程序进入后台 Xamarin 时,Webview 正在重新加载
【发布时间】:2016-12-10 08:31:07
【问题描述】:

每当应用程序进入后台并进入前台时,webview 都会重新加载。我只想在onpause中保存状态并在我恢复应用时重新加载它。可以吗?

我无法做到这一点。任何帮助将不胜感激。

protected override void OnCreate(Bundle bundle)
{     
   if (bundle == null) {  //everytime when I load, bundle is null and url is reloaded
   mapWebView.LoadUrl("url");
   } else {
     mapWebView.RestoreState(bundle);
   }
}

protected override void OnResume() {
        base.OnResume();
        if (mapWebView != null)
            mapWebView.OnResume();

    }

    protected override void OnPause()
    {
        base.OnPause();
        if (mapWebView != null)
        {
            mapWebView.OnPause();
            mapWebView.SaveEnabled = true;
            mapWebView.SaveState(bundle) //how to get bundle object here to save state

        }

    }

【问题讨论】:

    标签: webview xamarin.android


    【解决方案1】:

    mapWebView.SaveState(bundle) //这里如何获取bundle对象来保存状态

    要获取 Bundle,您需要重写方法

    public override void OnSaveInstanceState (Bundle outState, PersistableBundle outPersistentState) {
        base.OnSaveInstanceState (outState, outPersistentState);
    }
    

    每当应用程序进入后台并进入前台时,webview 都会重新加载。我只想将状态保存在 onpause 并在我恢复应用时重新加载。

    根据您的问题,很难理解何时要重新加载 webview。因为每次您的应用进入后台/前台时都会调用 onPause 和 OnResume。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多