Skip to main content
Juli 12, 2022

Was ist neu in SwiftUI 4 für iOS 16

Eines der Highlights, die Apple auf der WWDC 2022 vorgestellt hat, war iOS 16. Bei diesem Update stach der neue Sperrbildschirm hervor, auf dem wir mehr Informationen hinzufügen und ihn nach unseren Wünschen anpassen können. Diese Version wird vollständig mit SwiftUI entwickelt, das ebenfalls eine neue Version mit interessanten neuen Funktionen vorgestellt hat.

bild über ios 16 und iphone

Werfen wir einen Blick auf einige von ihnen und sehen wir uns an, was es mit diesem leistungsstarken Framework auf sich hat.

Was ist SwiftUI?

swiftui better apps less code

SwiftUI nutzt die gesamte Leistungsfähigkeit von Swift, um die grafischen Oberflächen unserer Anwendungen auf einfache und innovative Weise zu gestalten. Mit diesem Satz von Werkzeugen können wir die Ansichten unserer Anwendungen für alle Apple-Geräte erstellen. Dank SwiftUI werden wir anstelle von Storyboards und Interface Builder einen Code-Editor und einen Vorschaubereich (Canvas) verwenden.

Es wurde auf der WWDC 2019 vorgestellt und hat eine große Veränderung in der Art und Weise gebracht, wie wir unsere Apps erstellen. Es hat eine deklarative Syntax, was bedeutet, dass es viel einfacher sein wird, grafische Schnittstellen zu erstellen. Zweifelsohne eine große Veränderung gegenüber dem Code, der mit Storyboards erzeugt wurde.

Anforderungen

Um mit SwiftUI zu entwickeln, benötigen wir eine Mindestversion von Xcode 11. Außerdem müssen die Geräte, auf denen wir eine Anwendung mit SwiftUI ausführen wollen, eine Version haben, die gleich oder höher ist:

  • iPhone/iPad iOS 13
  • MacBook macOS Catalina 10.15
  • AppleWatch WatchOS 6
  • Apple TV tvOS 13

Wenn unsere Apps mit früheren Versionen kompatibel sind, werden wir nicht in der Lage sein, SwiftUI zu verwenden, und um alle neuen Funktionen der Version 4.0 zu genießen, können wir es nur mit Xcode 14 und der Entwicklung in Versionen gleich oder höher als tun:

  • iPhone/iPad iOS 16
  • MacBook macOS Catalina 13.0
  • AppleWatch WatchOS 9
  • Apple TV tvOS 16

Vorteile

Die Vorteile gegenüber UIKit sind beachtlich, was den Code und das Layout unserer Anwendungen angeht.

Wir müssen nicht mehr Klassen mit Ansichten verbinden, indem wir IBActions oder IBOutlets verwenden, ohne das Ergebnis unseres Codes zu sehen, bis wir die App ausführen, mit den damit verbundenen Zeitkosten. Dank der Vorschauen können wir nun in Echtzeit die Änderungen in unseren Ansichten sehen, während wir den Code schreiben, ohne dass wir kompilieren müssen.

Darüber hinaus werden wir von einem Framework mit einer imperativen Syntax zu einer deklarativen Syntax wechseln und unter anderem auf Delegates verzichten.

Wir werden auch die Möglichkeit haben, den Canvas zu ziehen und abzulegen, um die grafischen Elemente manuell zu gestalten. Auf diese Weise wird der Code automatisch generiert, und sogar mit dem SwiftUI Inspector können wir die Attribute der Elemente im Canvas ändern.

SwiftUI wird nicht die MVC-Architektur verwenden. Die Kommunikation zwischen den verschiedenen Ansichten erfolgt nun über das Combine-Framework, das der MVVM-Architektur (Model-View-View-Model) folgt.

Wir werden ein einziges zentrales Framework haben, um die Benutzeroberfläche für alle unterstützten Apple-Geräte zu erstellen. Der UI-Code wird für alle Geräte gleich sein. Jedes Betriebssystem (iOS, macOS, watchOS und tvOS) ist für die adaptive Darstellung der visuellen Elemente auf jedem Gerät verantwortlich; wir müssen nur kleine Anpassungen vornehmen, um volle Kompatibilität zu gewährleisten. All dies spart Code und reduziert die Zeit für die UI-Entwicklung, ohne dass wir sie für jedes Betriebssystem einzeln erstellen müssen.

Neue Funktionen von SwiftUI 4 für iOS 16

Wie jedes Jahr hält Apple eine entwicklerorientierte Konferenz namens WWCD (Apple Worldwide Developers Conference) ab und hat dieses Jahr viele neue Funktionen für SwiftUI Version 4.0 vorgestellt. Werfen wir einen Blick auf einige der wichtigsten davon:

Swift Charts

Dieses SwiftUI-Framework ermöglicht es uns, unsere Daten in informative Diagramme umzuwandeln und mit sehr wenig Code effektive und anpassbare Diagramme zu erstellen. Das Framework stellt uns Markierungen, Skalen, Achsen oder Legenden zur Verfügung, die kombiniert werden können, um eine breite Palette von Diagrammen zu erstellen.

Wir können Liniendiagramme, Balkendiagramme oder Streudiagramme erstellen. Es unterstützt Funktionen zur Lokalisierung und Barrierefreiheit. Außerdem können Sie Ihre Diagramme mit eigenen Animationen anpassen.

swift charts in switfui 4

Neue erweiterte Steuerelemente

Bislang mussten einige Steuerelemente, da sie in SwiftUI nicht vorhanden waren, mit UIKit verwendet werden; glücklicherweise migriert Apple sie jedoch nach und nach.

In dieser Version heben wir die folgenden Steuerelemente hervor:

  • TexField: Dateneingabe über ein Textfeld
  • MultiDatePicker: Mehrere Datumsauswahlen
  • Toogle: Anpassbare und kombinierbare Prüfungen. Mit der Möglichkeit, z.B. Buttons zu kombinieren und so Tags mit SwiftUI zu erstellen
  • Stepper: Stepper mit Formatierung

multidatapicker in swiftui 4 und ios 16

* Beispiel für die Implementierung von MultiDatePicker

Tabellenunterstützung

Mit der Tabellenkomponente können wir nun Tabellen mit verschiedenen Zeilen und Spalten implementieren. Diese Komponente bietet uns mehr Möglichkeiten als die bisherige Alternative, nämlich die Listen.

table in swiftui 4 and ios 16

Layout-Raster

Für das Layout unserer Apps steht uns ein neues Rasterlayout zur Verfügung, d.h. ein Raster aus Zeilen und Spalten, in dem wir unsere Elemente platzieren können und das unsere Apps mit einem Minimum an Code viel attraktiver macht.

layout grid in swiftui 4 and ios 16

Navigationsstapel

Eine neue SwiftUI-Komponente zur Verwaltung der Navigation in unseren Anwendungen. Sie ermöglicht es uns zum Beispiel, Ansichten in der Stammansicht zu präsentieren und den Navigationsstatus einfach zu verwalten.

SF-Symbole 4

Obwohl es sich nicht wirklich um eine neue Funktion von SwiftUI handelt, halten wir es für wichtig, sie zu erwähnen. SF Symbols ist eine Ikonographie-Bibliothek, die für die nahtlose Integration mit San Francisco, der Systemschriftart für Apple-Plattformen, entwickelt wurde. SF Symbols 4 bietet mehr als 700 neue Symbole, die uns helfen werden, eine nativere Designlinie zu verfolgen.

 

Wenn Sie nach der Lektüre dieser neuen Funktionen von SwiftUI 4.0 neugierig geworden sind, empfehlen wir Ihnen, die von Apple in seinem GitHub Repository bereitgestellte Beispiel-App herunterzuladen.

Es handelt sich um ein Demoprojekt, das mehrere Beispiele für diese neuen Funktionen zeigt, die in einer App namens Food Truck implementiert sind. Sie können alle neuen Funktionen in der offiziellen Apple-Dokumentation sehen oder das Video der Konferenz ansehen.