关于存储,SwiftUI View的生命周期是如何工作的?

我理解使用@State@StateObject@ObservedObject@Binding,甚至简单的let/var的含义

但不包括存储生命周期的工作方式以及与上述变量的关联方式

What gives a View it's identity and how does the system knows, when new View instances must be created and when they are only reassigned to this particular created View struct

我发现这是理解的关键,到底发生了什么

推荐答案

这是一个相当大的主题,而且不是一个容易适合StackOverflow帖子的主题.

我想你们的很多问题都是在2020年WWDC的Data Essentials in SwiftUI次会议上提出来的.它深入到了SwiftUI工作原理的一些内部,这将在很大程度上帮助您理解.

https://developer.apple.com/wwdc20/10040

Swift相关问答推荐

Swift concurrency reload/await,支持只执行成功并重试

SwiftUI正在初始化不带状态变量的绑定变量

为什么枚举上的.allCases.forEach不是循环(继续和中断不起作用)?

swift:只要框架名称中有一个带有框架名称的公共实体,就指定框架中公共 struct 的路径

如何增加 NSStatusBar 图像大小?

如何删除 macOS 中的所有命令?

不使用 ViewController 时如何显示推送通知的alert 对话框

SwiftUI 中的计时器崩溃屏幕

如何处理永远不会失败的 String.Encoding 初始化程序?

我如何从 UIAlertController 导航到新屏幕(swiftUI)

更新我的 pod 导致 GoogleDataTransport Umbrella 标头出现错误

即使设置为从不也可以访问 iOS11 照片库

Swift 中的 PageViewController 当前页面索引

在 Swift 框架中加载资源(例如故事板)

是 swift 中另一个日期的同一周、月、年的日期

Swift 3:小数到 Int

自定义 MKAnnotation 标注视图?

如何在 SwiftUI 中为删除和禁用配置 ContextMenu 按钮?

强制打开已在同一行代码中 Select 性访问的变量是否安全?

如何快速格式化用户显示(社交网络等)的时间间隔?