Как сделать так, чтобы полноэкранный WebView на iOS 26 хорошо работал со строкой состояния/динамическим островомIOS

Программируем под IOS
Ответить
Anonymous
 Как сделать так, чтобы полноэкранный WebView на iOS 26 хорошо работал со строкой состояния/динамическим островом

Сообщение Anonymous »

Я пытаюсь создать iOS-приложение SwiftUI с полноэкранным WebView, и у меня возникли проблемы с отображением контента за строкой состояния. Например, с помощью следующего кода:

Код: Выделить всё

import SwiftUI
import WebKit

struct ContentView: View {
var body: some View {
WebView(url: URL(string: "https://webkit.org"))
}
}
Когда я загружаю webkit.org (на iPhone 15 Pro Max, iOS 26.0.1), верхняя часть страницы закрывается строкой состояния и динамическим островом. Напротив, Safari отображает сплошной цвет под строкой состояния и смещает начало страницы. Когда пользователь прокручивает страницу, Safari позволяет содержимому перемещаться под строку состояния, но возникает эффект затемнения, благодаря которому строка состояния остается читаемой.



Приложение, использующее WebKit при загрузке
Safari при загрузке
Safari после прокрутки





Изображение


Изображение


Изображение




При загрузке stackoverflow.com возникает немного другая проблема. При загрузке страницы содержимое правильно размещается под строкой состояния, но когда пользователь прокручивает содержимое, оно появляется под строкой состояния, над строкой меню stackoverflow. В Safari такой проблемы нет.



Приложение, использующее WebKit при загрузке
Приложение, использующее WebKit после прокрутки
Safari после прокрутки





Изображение


Изображение


Изображение




Как добиться поведения, аналогичного Safari?
В идеале оно было бы идентично, но я бы согласился, чтобы строка состояния была сплошным цветом все время, скрывая содержимое под ним.
У меня есть экспериментировал с применением: но, похоже, это не имеет никакого эффекта.

Подробнее здесь: https://stackoverflow.com/questions/798 ... ar-dynamic
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»