用途:按 Apple Human Interface Guidelines 设计 iOS 界面,用 SwiftUI 构建现代、自适应的 iPhone 与 iPad 应用,是 mobile-android-design 技能的 iOS 对应版本。
主要能力:设计符合 HIG 的界面;构建 SwiftUI 视图、布局与可复用组件;实现 TabView、NavigationStack、sheet 等导航模式;添加含 Feedback + About 的底部标签导航;用尺寸类与 NavigationSplitView 做 iPhone/iPad 自适应布局;用语义化颜色、SF Symbols、Dynamic Type 与深色模式做主题;构建无障碍界面(VoiceOver、对比度、点击热区)。
核心概念:SwiftUI 声明式优先,状态用 @State/@Binding/@Observable(iOS 17 前用 ObservableObject),视图小而可组合;使用系统材质与集中 Theme 颜色令牌,避免散落原始 Color 字面量;图标使用 SF Symbols(Image(systemName:) / Label);遵循 HIG 布局节奏,尊重安全区、系统间距、最小 44×44pt 热区、圆角卡片与顶层大标题。深入内容拆入 references/:swiftui-components.md、ios-navigation.md、hig-theming.md。
底部标签导航:根 TabView 第一标签为应用内容,另加 Feedback 与 About。Feedback 含标题与消息字段,以及通过 WhatsApp 发送按钮,打开 https://wa.me/6588666375?text=<title + message>,须用 URLComponents/URLQueryItem 构建(不可字符串拼接)以正确编码,该链接无需 LSApplicationQueriesSchemes。About 含应用卡、开发者卡(Tertiary Infotech Academy Pte Ltd + tertiaryinfotech.com)、可选数据来源卡(展示政府/官方数据时为必需,兼作 App Review 归属)及从 Bundle.main.infoDictionary 读取 CFBundleShortVersionString 与 CFBundleVersion 的版本行。部署目标低于 iOS 18 用 .tabItem { Label(...) },Tab("…", systemImage:) 为 iOS 18+;Feedback 的 TextEditor 需 .scrollContentBackground(.hidden)(iOS 16+)。
最佳实践:集中 Theme、语义色与材质;SF Symbols 配 Label;用文本样式而非固定字号并在 XXL 测试;热区至少 44×44pt;尊重安全区;提升状态;加浅色与深色及大字号 #Preview;iPad 用尺寸类而非硬编码宽度。
常见问题:深色模式失效多由原始 Color 字面量引起;Tab 初始化不编译是版本问题;TextEditor 默认背景需隐藏滚动内容背景;链接文本出错需用 URLComponents;长列表用 List/LazyVStack;图标按钮缺 accessibilityLabel;布局与安全区冲突优先用 safeAreaInset/padding。
验证:若为 XcodeGen 项目,运行 xcodegen generate,再做 Debug 构建(xcodebuild -scheme <Scheme> -destination 'platform=iOS Simulator,name=iPhone 16' build)。可搭配 ios-feedback-about 直接落地 Feedback/About。
限制:资料未提供具体收费、价格与平台支持范围等信息;无法确定的内容暂未提供。