SwiftUI教程
先写了份SwiftUI学习教程大纲,涵盖了SwiftUI的所有关键技术和概念,后面有时间慢慢补坑。
-
SwiftUI基础
- SwiftUI简介
- 声明式UI编程模型
- Views 和 ViewBuilders
- 预览面板(Preview)的使用
-
常用控件及布局
- Text, Image, Button等基础控件
- Stacks(HStack, VStack, ZStack)布局
- List 和 ScrollView
- LazyVGrid 和 LazyHGrid 网格布局
- Form 表单
- Spacer 和 Divider
-
Combine框架基础
- Publisher和Subscriber
- @Published和CurrentValueSubject
- Combine中的数据流和操作符
-
状态与数据流
- @State 管理局部状态
- @Binding 数据双向绑定
- @ObservedObject 和 @StateObject
- @EnvironmentObject 环境对象
- @Published 发布属性
-
页面导航
- NavigationView 和 NavigationLink
- TabView 标签导航
- Sheet 和 fullScreenCover 模态页面
- Alerts 和 Actionsheets
-
生命周期和事件
- onAppear 和 onDisappear
- onChange 监听状态变化
- @Environment 获取环境值
-
动画与过渡
- Animation 基础动画
- 过渡动画(transitions)
- 非对称过渡
- matchedGeometryEffect 动画
-
手势交互
- TapGesture 点击手势
- LongPressGesture 长按手势
- DragGesture 拖动手势
- MagnificationGesture 缩放手势
- RotationGesture 旋转手势
- 组合手势(simultaneously, sequenced)
-
自定义布局
- 自定义UIViewRepresentable
- 自定义Layout
-
数据持久化
- @AppStorage 轻量数据持久化
- Core Data 集成
-
与UIKit集成
- UIViewControllerRepresentable
- UIViewRepresentable
-
绘图与特效
- Paths & Shapes绘图
- UIGraphicsImageRenderer绘制
- Core Image 滤镜
- Metal 渲染
-
并发编程
- async/await异步编程
- Actor模型
- TaskGroup 和 TaskPriority
-
辅助功能
- 动态字体缩放
- 色盲模式适配
- 辅助功能标签(accessibilityLabel)
-
SwiftUI 3.0+ 新特性
- AttributeGraph 自定义控件
- Canvas 绘图
- 异步图片加载(AsyncImage)
- Tab 视图样式定制
- DatePicker、Gauge等新控件
- 材料(Material)与模糊特效
- ShareLink 分享页面
- NavigationStack 和 NavigationSplitView 新页面导航方式
- Charts 图表绘制
- 新的导航栏隐藏方式(toolbar/.hidden)
-
SwiftUI最佳实践
- 架构模式:MVVM在SwiftUI中的应用
- 代码组织和模块化
- 可维护性和可测试性
-
实战项目
-
实战项目1: 待办事项应用
- 设计UI
- 数据模型
- 增删改查操作
- 状态管理
-
实战项目2: 天气应用
- 网络请求
- JSON解析
- 异步图片加载
- 复杂布局
-
实战项目3: 新闻阅读器
- RSS解析
- 多源合并
- 文章阅读视图
- 收藏与分享功能
-