What new in SwiftUI
Generated on 7/31/2024
1 search
What's New in SwiftUI
SwiftUI has introduced a variety of new features and improvements this year. Here are some of the highlights:
-
Graphics Capabilities:
- Color Mixing: A new
mix
modifier onColor
allows blending colors together by a specified amount. - Custom Shaders: Extended to allow precompiling shaders before their first use, avoiding frame drops caused by lazy shader compilation.
- Color Mixing: A new
-
Scrolling Enhancements:
- Fine-Grained Control: New APIs provide detailed control over scroll views, including reacting to changes in content, offsets, and content size.
- Visibility Detection: Detect when a view's visibility changes due to scrolling, enabling experiences like auto-playing videos when they come into view.
- Scroll Positions: More scroll positions are available for programmatic scrolling, such as scrolling to the top edge.
- Additional Controls: Options to turn off bouncing along a given axis, programmatically stop scrolling, and control content alignment.
-
Swift 6 Language Mode:
- Compile-Time Data Race Safety: The new Swift 6 language mode includes compile-time data race safety.
- Main Actor Annotation: Views in SwiftUI are now marked with the
@MainActor
annotation, meaning all types conforming toView
are implicitly isolated to the main actor by default.
-
Interoperability:
- Gesture Recognition: Gesture recognition has been factored out of UIKit, allowing the use of any built-in or custom UI gesture recognizer in SwiftUI view hierarchies.
- Animations: Animations have been factored out of SwiftUI, enabling setup of animations on UIKit or AppKit views and driving them with SwiftUI, including fully custom animations.
-
Accessibility:
- Accessibility Labels: You can add additional accessibility information to controls without overriding the framework-provided label.
- Conditional Modifier Support: New accessibility features include conditional modifier support and app intent-based accessibility actions.
-
Xcode Previews:
- Dynamic Linking Architecture: Allows switching between a preview and build-and-run without needing to rebuild the project, increasing iteration speed.
- State in Previews: Use state directly in previews with the
@Previewable
macro, eliminating the need for boilerplate code.
-
Text and Selection:
- Text Selection: Programmatic access to and control of text selection within text editing controls.
For a detailed overview, you can watch the session What’s new in SwiftUI.
Relevant Sessions
Feel free to explore these sessions for more in-depth information on the new features and improvements in SwiftUI.
What’s new in watchOS 11
Explore new opportunities on Apple Watch, including bringing Double Tap support to your watchOS app, making your Smart Stack widgets even more relevant and interactive, and displaying your iOS Live Activities in the Smart Stack.
What’s new in SwiftUI
Learn how you can use SwiftUI to build great apps for any Apple platform. Explore a fresh new look and feel for tabs and documents on iPadOS. Improve your window management with new windowing APIs, and gain more control over immersive spaces and volumes in your visionOS apps. We’ll also take you through other exciting refinements that help you make expressive charts, customize and layout text, and so much more.
SwiftUI essentials
Join us on a tour of SwiftUI, Apple’s declarative user interface framework. Learn essential concepts for building apps in SwiftUI, like views, state variables, and layout. Discover the breadth of APIs for building fully featured experiences and crafting unique custom components. Whether you’re brand new to SwiftUI or an experienced developer, you’ll learn how to take advantage of what SwiftUI has to offer when building great apps.
Platforms State of the Union
Discover the newest advancements on Apple platforms.