.presentationDetents([.height(550)]) funktioniert unter iOS 26, wird aber unter iOS 18.6 im Vollbildmodus angezeigtIOS

Programmierung für iOS
Anonymous
 .presentationDetents([.height(550)]) funktioniert unter iOS 26, wird aber unter iOS 18.6 im Vollbildmodus angezeigt

Post by Anonymous »

Ich versuche, ein SwiftUI-Blatt mit einer festen Höhe von 550 Punkten darzustellen, und ich erwarte, dass es auf allen iOS-Versionen 550 Punkte hoch bleibt.

Code: Select all

.sheet(isPresented: $showSheet) {
MySheetContent()
.presentationDetents([.height(550)])
}
Das Verhalten ändert sich je nach iOS-Version:
  • Auf iOS 26 ist das Blatt genau 550 Punkte hoch (korrektes Verhalten)
  • Auf iOS 18.6 wird das Blatt automatisch auf erweitert Vollbild, auch wenn die tatsächliche Inhaltshöhe weniger als 550 beträgt und passen sollte
Das ist also kein Problem des Inhaltsüberlaufs – 550 ist die richtige Höhe, aber 

Code: Select all

.height(550)
 wird auf älteren Betriebssystemversionen ignoriert.
Frage:

Warum? 

Code: Select all

.height(550)
 wird in iOS 18.6 und früheren Versionen ignoriert, und gibt es eine Möglichkeit, ein Blatt mit fester Höhe (550) auf allen iOS-Versionen zu erzwingen, ohne zu scrollen und ohne es zu verwenden 

Code: Select all

.medium
 / 

Code: Select all

.large
 Rasten?
Einschränkungen
  • Blatt muss bei allen Betriebssystemversionen bei 550 bleiben
  • Kein Vollbild
  • Kein Scrollen
  • Bevorzugen Sie eine reine SwiftUI-Lösung (UIKit nur, wenn es keine Alternative gibt)
Umgebung
  • SwiftUI
  • Xcode 26.0.1
  • Funktioniert ordnungsgemäß unter iOS 26
  • Funktioniert nicht unter iOS 18.6

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post