Содержимое Android Webview не должно быть потеряно при изменении ориентации, но графический интерфейс должен быть правильно обновлен

Я пытаюсь сохранить загруженные значения страницы и javascript WebView при изменении ориентации и приостановке действия. Сначала я попытался переопределить configChanges, но это привело к тому, что мой графический интерфейс не был правильно обновлен (у меня есть скользящий кадр, который меняет положение при изменении ориентации). После этого я попытался поместить WebView в фрагмент и вызвать setRetainInstance (true); Но это не препятствует сохранению содержимого WebView. Я пытался сохранить один и тот же объект, не воссоздавая его, но андроид не позволяет повторно использовать представления.

Мой вопрос: есть ли способ сохранить содержимое веб-обозревателя без необходимости его перезагрузки при каждом изменении ориентации, в то время как другие компоненты графического интерфейса будут обновляться должным образом.

Надеюсь, мой вопрос достаточно ясен, но я был бы рад разработать, если будут какие-то непонятные.

EDIT: я уже пробовал добавить android: configChanges = "keyboardHidden | orientation" в моем манифесте, вот что я имел в виду под «переопределением конфигураций»,

Кажется, единственное решение – обновить все переменные javascript снова при изменении ориентации. Поскольку я еще не запускал огромные куски обновлений через javascript, я не могу дать много информации о скорости и ресурсах этой операции.

Я знаю, что ты уже пробовал

android:configChanges="keyboardHidden|orientation" 

Но попробуйте это вместо этого

 android:configChanges="keyboardHidden|orientation|screenSize" 

В Android 3.2 и «размер экрана» изменяется, когда вы вращаетесь, что заставляет webview воссоздавать себя. См. Связанный ответ ниже для получения дополнительной информации.

Я нашел этот ответ здесь https://stackoverflow.com/a/11903546/655822

Добавьте это в свой файл androidmanifest ….. activity

 android:name=".YourActivityHere" android:configChanges="keyboardHidden|orientation" 

Попробуйте это поставить это в манифест

 android:configChanges="orientation|keyboardHidden"></activity> 

Это в вашем классе

 @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); } 

Добавьте строку ниже в файл манифеста Android.

android:configChanges="keyboardHidden|orientation"

Intereting Posts
Как передать намерение от TabActivity к его дочерней активности Android Dropbox API не сохраняет логин Как получить общее количество просмотров из ViewFlipper? Сохранять разные истории поиска для разных видов деятельности? Выберите первое SMS-сообщение в ящике базы данных Android Новый список приложений в стиле «Входящие» для Android с прорисовкой влево и вправо Установка targetSdkVersion = "13" заставляет действия игнорировать android: configChanges = флаг "orientation" Как убить процесс? Ошибка при создании подписанного приложения apk task: packageRelease Скрыть панель действий при касании Java – Android – Сплит-активность / Класс в несколько файлов для лучшей организации (решения) Как обратные вызовы SurfaceHolder связаны с жизненным циклом деятельности? Загрузка Android-ресурса в WebView Как открыть почтовый ящик по умолчанию из кода Android? Jelly Bean API для преобразования текста в речь Google Voice?