state in SWIFTUI
Asked on 06/16/2025
2 searches
In SwiftUI, state management is a fundamental concept that allows views to update dynamically in response to changes in data. SwiftUI provides several tools for managing state, including @State
and @Binding
.
-
State (
@State
): This is used to create an internal source of data for a view. When you mark a view property with@State
, SwiftUI manages the storage and provides it back for the view to read and write. This allows the view to react to changes in the state and update its UI accordingly. For example, a view might use@State
to keep track of a rating value that can be incremented or decremented by user interaction. SwiftUI automatically updates the UI when the state changes. -
Binding (
@Binding
): This creates a two-way reference to the state of another view. It allows a child view to read and write to a state property owned by a parent view. This is useful for scenarios where multiple views need to stay in sync with a single source of truth. For instance, a container view might provide a binding to a child view so that both can update in sync when the state changes.
SwiftUI's declarative nature means that views are descriptions of what the UI should look like at any given state, and SwiftUI takes care of updating the UI when the state changes. This approach eliminates boilerplate code and reduces the likelihood of update bugs.
For more detailed information on state management in SwiftUI, you can refer to the session SwiftUI essentials (10:41).

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.

Optimize SwiftUI performance with Instruments
Discover the new SwiftUI instrument. We’ll cover how SwiftUI updates views, how changes in your app’s data affect those updates, and how the new instrument helps you visualize those causes and effects. To get the most out of this session, we recommend being familiar with writing apps in SwiftUI.

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.