SwiftUIMidMCQ
What is `@AppStorage` and when would you use it?
Test your knowledge:
Explanation & Code
Answer:
@AppStorage is a property wrapper that reads and writes to UserDefaults and automatically refreshes the view when the value changes. Use it for lightweight user preferences.
Code Example:
struct SettingsView: View {
@AppStorage("isDarkMode") private var isDarkMode = false
@AppStorage("fontSize") private var fontSize = 16.0
@AppStorage("username") private var username = ""
var body: some View {
Form {
Toggle("Dark Mode", isOn: $isDarkMode)
Slider(value: $fontSize, in: 12...24)
TextField("Username", text: $username)
}
}
}
When to use vs not:
- ✅ Simple user preferences (theme, font size, onboarding seen)
- ❌ Large data, sensitive data, or complex objects — use Core Data, Keychain, or a file instead
Rate your understanding: