外观风格
使用 Observable Object 进行存储
为了让用户能够控制哪些地标能被收藏,我们先要把地标数据存储在 observable object
中。
observable object
是数据的自定义对象,它可以从 SwiftUI
环境中的存储绑定到视图上。 SwiftUI 监视 observable object
的修改,并在修改后显示正确的视图内容。
数据驱动视图变化

第 1 步
在项目的导航器中,选择 ModelData.swift
文件。
第 2 步
引入 Combine
库,声明一个遵循 ObservableObject
协议的模型类型。
SwiftUI
会订阅你的 ObservableObject
,并在数据变化时更新需要刷新的视图。
第 3 步
将 landmarks
的声明移到 ModelData
中。
ObservableObject
需要发布其数据的更改,以便其订阅者可以获取其更改。
第 4 步
给 landmarks
添加 @Published
属性。