// 이름 저장(String)
UserDefaults.standard.set("June", forKey: "name")
// 폰번호 저장(Int)
UserDefaults.standard.set(01011112222, forKey: "phoneNumber")
// 개발자인지 아닌지 저장(Bool)
UserDefaults.standard.set(true, forKey: "isDeveloper")
// String 값 가져오기
let name = UserDefaults.standard.string(forKey: "name") ?? ""
// Int 값 가져오기
let phoneNumber = UserDefaults.standard.integer(forKey: "phoneNumber")
// Bool 값 가져오기
let isDeveloper = UserDefaults.standard.bool(forKey: "isDeveloper")
값이 없는 경우?
String = nil 반환, 옵셔널 바인딩 필수
Int, Float, Double = 0 반환
Array = 빈 배열 반환
UserDefaults.standard.removeObject(forKey: "name")
import SwiftUI
struct ContentView: View {
@AppStorage("username") var username: String = UserDefaults.standard.string(forKey: "username") ?? "stranger"
var body: some View {
VStack {
Text("Hello, \(username)😄")
Button("Log in") {
username = "June"
}
}
}
}
위 코드처럼 값을 바꿔주는 것만으로 변경 완료됨.