Android: ширина и высота обзора после изменения ориентации

Мне нужно получить ширину и высоту WebView и передать их в строке запроса URL, который я загружаю в WebView. Я нашел способ сделать это в onResume(). Поскольку ширина и высота не рассчитываются в этой точке, я публикую Runnable в WebView, который будет поставлен в очередь после загрузки пользовательского интерфейса.

Вот моя проблема: когда ориентация меняется, я обрабатываю ее в onConfigurationChanged. Когда я пытаюсь опубликовать Runnable в onConfigurationChanged в WebView, ширина и высота WebView заканчиваются шириной и высотой старой ориентации. В какой момент я могу перехватить новую ширину и высоту после изменения ориентации?

3 ответа

Использовать ViewTreeObserver, для примера проверьте этот ответ: /questions/45974418/kak-poluchit-novuyu-shirinu-vyisotu-kornevogo-maketa-v-onconfigurationchanged/45974437#45974437

Это работает только с родительским представлением или getRootView(), он возвращает те же h t и wd для дочернего представления.

Попробуйте в onPostResume. Это вызывается после onResume, который должен вызываться, когда он готов выложить его на экран.

Другие вопросы по тегам