WWDC Quick Look 💓 By SwiftGGTeam
WWDC22 Day 4 recap

WWDC22 Day 4 recap

观看原视频

Highlight

Day 4 重点发布了 SwiftUI iPad 界面组织、SwiftUI 与 UIKit 互操作、Vision 框架光流计算,以及 SharePlay 体验设计。

核心内容

SwiftUI iPad 界面组织

Day 4 开场是 Raj 讲解如何用 SwiftUI 组织 iPad 界面。iPadOS 16 的多窗口支持带来了状态恢复、深层链接和更丰富的程序化控制需求。(00:10

SwiftUI 的导航状态现在可以序列化,支持从 URL 恢复界面状态。这意味着用户关闭 App 后重新打开,或者通过链接进入 App,都能回到正确的界面位置。

SwiftUI 融入 UIKit

Sara 展示了如何在 UIKit 项目中使用 SwiftUI。通过 UIHostingController,SwiftUI 视图可以在任何使用 View Controller 的地方嵌入。(00:21

这种渐进式迁移策略让现有 UIKit 项目可以逐步引入 SwiftUI,不需要一次性重写。可以从一个独立页面开始,逐步扩展到更多模块。

Vision 框架光流计算

Brett 介绍了 Vision 框架的最新更新。其中一个演示是计算光流(optical flow)——追踪视频中每个像素的运动方向和速度。示例是一只狗在沙滩上叼水瓶的短视频。(00:30

光流计算对视频分析、动作识别、AR 场景理解都有重要价值。

SharePlay 体验设计

SharePlay 被描述为一个”传送门”,把人们通过手机带到同一个空间。Day 4 的 Session 讲解了如何设计有吸引力的 SharePlay 体验,让用户感觉彼此真的在一起。(00:38

界面文案写作

Apple 的界面文案团队分享了写作原则:界面写作始于对屏幕另一端用户的好奇心。好的文案是功能的一部分,不只是视觉点缀。(00:48

详细内容

Day 4 技术专题分类

SwiftUI 进阶

  • iPad 界面组织:多窗口、状态恢复、深层链接
  • UIKit 互操作:渐进式迁移策略
  • 导航状态管理:序列化和恢复

计算机视觉

  • 光流计算:像素级运动追踪
  • Vision 框架新 API

社交与协作

  • SharePlay 设计模式
  • Group Activities 框架

设计与文案

  • 界面文案写作原则
  • 用户中心的设计语言

SwiftUI 与 UIKit 互操作的实践路径

渐进式迁移的典型路径:

  1. 独立页面:先用 UIHostingController 把一个新页面做成 SwiftUI
  2. 组件替换:把 UIKit 中的自定义视图逐步替换为 SwiftUI 视图
  3. 数据层统一:用 ObservableObject 或 @Observable 统一数据流
  4. 完整模块:当一个功能模块完全用 SwiftUI 实现后,移除对应的 UIKit 代码

这种路径的风险最低,团队可以在实践中学习 SwiftUI,同时保持产品稳定。

核心启发

  • 渐进式 SwiftUI 迁移:现有 UIKit 项目不需要等待重写,可以从一个设置页面或新功能模块开始引入 SwiftUI。用 UIHostingController 包装 SwiftUI 视图,像普通 View Controller 一样使用。入口 API 是 UIHostingController(rootView:)

  • 视频动作分析应用:利用 Vision 的光流计算,分析运动视频中的动作轨迹。可以用于体育训练(分析投篮姿势)、宠物行为分析、或者安全监控。入口 API 是 VNGenerateOpticalFlowRequest

  • 多人同步观影应用:用 SharePlay 和 Group Activities 框架,做一个多人同步观影平台。用户可以邀请朋友一起看电影,播放进度自动同步,还能实时语音聊天。入口 API 是 GroupActivityGroupSession

  • iPad 多窗口文档应用:利用 SwiftUI 的多窗口支持,做一个支持多文档并行编辑的 iPad 应用。每个文档独立窗口,支持从外部链接直接打开特定文档。入口 API 是 WindowGrouponOpenURL

关联 Session

评论

GitHub Issues · utterances