@AppStorageはデータを永続化するUserDefaultsから値を読み込みする
UserDefaultはアプリで利用する値を保存する機能
L ここではtimer_valueというkeyにtimeValueの初期時10を導入している
@State var timerHandler : Timer?
@State var count = 0
@AppStorage("timer_value") var timerValue = 10
1秒ごとに呼び出してcountを+1とし、残り0でタイマーを止める
func countDownTimer() {
count += 1
if timerValue - count <= 0 {
timerHandler?.invalidate()
}
}
タイマー開始
func startTimer() {
if let unwrapedTimerHandler = timerHandler {
if unwrapedTimerHandler.isValid == true {
return
}
}
if timerValue - count <= 0 {
count = 0
}
timerHandler = Timer.scheduledTimer(withTimeInterval: 1, repeats: true){
_ in
countDownTimer()
}
}

### タイマーの保存
SettingView.swift
@AppStorage("timer_value") var timerValue = 10
シミュレータで確認する

### アラートの表示
.alert(isPresented: $showAlert){
Alert(title: Text("終了"),
message: Text("タイマー終了時間です"),
dismissButton: .default(Text("OK")))
}

すげえええええええええええ