You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SwiftUI中@AppStorage修饰变量应用重启时的取值规则问询

@AppStorage读取逻辑说明

应用重启时,pullData会优先读取UserDefaults中已存储的对应值,你代码中写的= true是默认兜底值,仅当UserDefaults中不存在pullData对应的存储记录时才会生效。

具体分两种场景:

  • 若用户从未修改过pullData的值,UserDefaults中没有生成对应存储记录,此时变量会取你设置的默认值true
  • 若用户使用过程中修改过pullData的值,修改结果会自动同步到UserDefaults持久化存储,后续应用重启时会直接读取该存储值,不会被重置为初始的true

补充说明:

@AppStorage本质是SwiftUI对UserDefaults的封装,所有对@AppStorage修饰变量的修改都会自动同步到UserDefaults,不需要手动调用存储方法。你可以通过UserDefaults.standard.bool(forKey: "pullData")随时查看该键的实际存储值,验证读取逻辑。

内容的提问来源于stack exchange,提问作者mdav132

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 07:27:00