SettingsKit 是用于 SwiftUI 设置界面的独立 Swift 包,适用 iOS、macOS、watchOS、tvOS、visionOS。
用途:构建应用设置/偏好界面,支持可搜索设置与嵌套层级。
主要能力:自动导航(iPad/Mac 侧边栏、iPhone 单列)、内置搜索、平台自适应展示、基于 @Observable 的响应式状态更新;支持 SettingsGroup(导航链接或 .inline 段落)、SettingsItem 包裹控件、.settingsTags 增强搜索、嵌套分组与自定义展示样式(.sidebar/.single/自定义 SettingsStyle)。
用法:通过 Swift Package Manager 添加依赖 https://github.com/aeastr/SettingsKit.git(1.0.0+);创建带 @Observable 的设置模型;实现 SettingsContainer 协议并用 @Bindable 创建绑定;在 App 中用 .environment(settings) 注入。
要求:Swift 6.0+、Xcode 16.0+、iOS 17.0+/macOS 14.0+/watchOS 10.0+/tvOS 17.0+/visionOS 1.0+。不要使用 ObservableObject/@Published,避免在 settingsBody 中做重计算,macOS 上勿自行包裹 NavigationStack。资料列出 5 类已知问题及预防措施,其余 API 细节暂未提供。