I think i solved my own issue, for those who need it in the future. I am using this solution in the PreferencesViewModel to ignore setting the user defaults
import Foundation
class PreferencesViewModel: ObservableObject {
@Published var maximumDistance: Double = UserDefaults.standard.value(for: .maximumDistance) as? Double ?? PreferencesViewModel.maximumDistanceOptions[0] {
didSet {
//Check if running in preview mode
#if DEBUG
if ProcessInfo.processInfo.environment["XCODE_RUNNING_FOR_PREVIEWS"] == "1" {
print("Preview mode detected. Not saving to UserDefaults.")
return
}
#endif
UserDefaults.standard.set(maximumDistance, for: .maximumDistance)
}
}
```
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: