Непоследовательная вставка для безопасной зоны для iPhone в ландшафтной ориентацииIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Непоследовательная вставка для безопасной зоны для iPhone в ландшафтной ориентации

Сообщение Anonymous »

Я заметил проблему с верхней безопасной зоной для iPhone, управляющего iOS 26 в ландшафтной ориентации. В частности, это видно со следующей конфигурацией: < /p>
  • xcode 26.0 Beta 3, Swift 6, Минимальное целевое значение развертывания 18.0 < /li>
    iPhone 16 Simulator, работающий с iOS 26.0 < /li>
    < /ul>
    . Проблема может быть демонстрирует следующее код, что будет демонстрировать следующее, что будет демонстрировать следующее, что будет демонстрировать следующее, что будет демонстрировать следующее, что будет демонстрировать следующее, что будет демонстрировать следующее, что будет демонстрировать следующее, что будет демонстрировать следующее код, что будет демонстрировать следующие код, что будет демонстрировать. Измерьте размер экрана и вставку безопасной области: < /p>

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

    struct ContentView: View {
    var body: some View {
    GeometryReader { geo in
    VStack {
    Text("\(geo.safeAreaInsets.top)")
    Spacer()
    HStack {
    Text("\(geo.safeAreaInsets.leading)")
    Spacer()
    Text("\(String(describing: geo.size))")
    Spacer()
    Text("\(geo.safeAreaInsets.trailing)")
    }
    Spacer()
    Text("\(geo.safeAreaInsets.bottom)")
    }
    .padding(.horizontal)
    }
    .border(.red)
    }
    }
    < /code>
    Шаги по воспроизведению: < /p>
    
     Запустите код на симуляторе iPhone 16, начиная с ориентации портрета. Обратите внимание на верхнюю вставку. Сравните верхнюю вставку с вставкой из шага 2. < /Li>
    < /ol>
    Некоторые примеры запуска: < /p>
    ❌ xcode 26.0 Beta 3 + iPhone 16 Simulator, работающий с iOS 26.0: Top inset 20 в шаге 2, но 0 в шаге 3 -> nok
    
    ✔ xcod xcod xcod xcod xcod xcod 26.0 xcod 26.0. 18.5: Top вставка всегда 0 -> OK
    
    ✔ xcode 16.4 + iPhone 16 Симулятор, работающий в iOS 26.0: Top вставка всегда 0 -> OK
    
    ✔ xcode 16.4 + iPhone 16 Simulator, работающий с ios 18.5: Top INSET всегда 0 -> OK < /p>
     IS также пробовал IPS. IPAS также пробовал. Хотя вставки отличаются для разных версий iOS, они последовательны по портретной и ландшафтной ориентации. Так что нет проблем. Однако, если он остается ошибкой, которая не решается быстро, мне было бы интересно найти обходной путь. < /P>
    
      Один обходной путь-это игнорировать верхнюю вставку с безопасным районом при запуске на iPhone в ориентации ландшафта, но это кажется грязно. В GeometryReader 
    не помогает:

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

GeometryReader { geo in
// ...
}
.id(UUID()) // 👈 doesn't help
.border(.red)
Как можно вставить безопасную зону для iPhone в ландшафтной ориентации?


Подробнее здесь: https://stackoverflow.com/questions/797 ... rientation
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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