Android WebView restoreState freeze - PullRequest
       4

Android WebView restoreState freeze

2 голосов
/ 04 октября 2011

Мой вопрос связан со многими существующими вопросами, касающимися обработки WebView после изменения ориентации.

Я знаю, что действие более чем уничтожено, поэтому я использую onSaveInstanceState (), чтобы сохранить его состояние, а затем я восстановлю его с помощью restoreState().

И это прекрасно работает большую часть времени.Но это не так, когда я меняю ориентацию слишком быстро - сразу после начала своей деятельности или создания объекта WebView после возврата из другого макета.Отладка показывает, что мое состояние WebView сохраняется (и что все объекты уже созданы и подготовлены, когда происходит изменение ориентации), и пытается восстановить состояние, но каким-то образом не может.Там нет никаких ошибок, но страница никогда не загружается, я вижу бесконечный белый экран.Вызов WebView.reload () также не помогает.

Есть идеи, почему это происходит?Как я уже сказал, все объекты создаются во время изменения ориентации и вызывается метод loadUrl (), поэтому состояние должно быть сохранено правильно.

1 Ответ

1 голос
/ 04 октября 2011

проверьте ваш пакет WebView. Если это ПУСТО, то не восстанавливать состояние.

if (!bundleObject.isEmpty()) {
    mWebView.restoreState(bundleObject);

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...