What is @state in the swiftUI
Asked on 06/16/2025
1 search
In SwiftUI, @State
is a property wrapper used to create a source of truth for a view. It allows you to declare a piece of state that SwiftUI will manage for you. When you mark a view property with @State
, SwiftUI handles the storage and provides it back for the view to read and write. This is particularly useful for managing simple state within a view, such as toggling a switch or updating a counter.
For example, in the session "SwiftUI essentials," it is explained that when you use @State
, SwiftUI manages the storage of the state and updates the view when the state changes. This allows for a declarative approach to UI updates, where the UI automatically reflects the current state without needing explicit update calls.
If you want to learn more about how @State
works 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.