Skip to content

XiaomingX/awesome-swiftui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

awesome-swiftui(精选SwiftUI学习资源与工具 | 适配iOS 18+/Swift 5.10)

专注整理适配最新系统、高频实用的SwiftUI资源,剔除小众过时内容和早期版本教程,帮你精准聚焦核心技能,高效提升开发能力。

一、官方教程(权威首选,适配最新版本)

苹果官方出品的教程是入门和进阶的“标准答案”,完全同步Xcode、Swift和系统的最新特性,权威性拉满。

  • SwiftUI 官方教程 - 入门级首选:从基础视图(Text、Button)到交互逻辑,通过小案例快速上手,教你用SwiftUI搭建“优雅且动态”的UI。
  • iOS App开发入门(含SwiftUI) - 完整项目实战:以“开发一个功能完整的iOS App”为目标,串联SwiftUI布局、数据处理、上架基础等核心流程。
  • 跨平台开发:从iOS到macOS/watchOS - 平台拓展必备:讲解SwiftUI的“一次编码、多端适配”特性,教你快速将iOS应用拓展到macOS、watchOS平台。

二、WWDC 近年核心专题(抓准技术迭代方向)

WWDC是SwiftUI更新的“风向标”,优先看2023年后的内容,聚焦苹果官方主推的新特性(如Observation框架、性能优化)。

三、实用书籍(从入门到进阶,覆盖系统新特性)

推荐经过社区验证、持续更新的书籍,避免买“过时教材”。

四、开源库精选(解决80%开发场景,附核心优势)

精选维护活跃、社区星数高的库,覆盖开发高频需求,部分标注“原生替代方案”(避免重复造轮子)。

1. 图片加载(最常用场景)

  • Kingfisher - 核心优势:轻量、链式API易上手,支持缓存(内存+磁盘)、图片压缩、渐进式加载,适配SwiftUI的AsyncImage特性。
  • SDWebImageSwiftUI - 核心优势:基于老牌SDWebImage,支持GIF动图、图片过渡动画,适合需要复杂图片处理(如圆角、模糊)的场景。

2. 状态管理(SwiftUI核心难点)

  • TCA (The Composable Architecture) - 核心优势:苹果推荐的“可组合架构”,解决复杂应用的状态共享、副作用管理问题,适合中大型项目。
  • ObservableMacros - 核心优势:简化Observation框架的代码,用宏自动生成数据观察逻辑,减少模板代码。

3. 图表与数据可视化

  • SwiftUICharts - 核心优势:支持折线图、柱状图、饼图,自带无障碍适配(VoiceOver),API简洁,比苹果原生Charts更易定制样式。
  • 原生替代:iOS 16+自带Charts框架,适合简单图表场景(无需额外引入第三方)。

4. 动画与交互

  • SwiftUI-Animations - 核心优势:包含100+实战动画案例(如渐入、缩放、路径动画),可直接复制代码到项目中修改。
  • LottieSwiftUI - 核心优势:支持加载AE制作的复杂动画(如启动页动画、交互反馈),是App动效的“行业标配”。

5. 布局增强

  • WaterfallGrid - 核心优势:SwiftUI原生不支持瀑布流,这个库可快速实现“小红书式”不等高网格布局。
  • 原生替代:iOS 16+的LazyVGrid/LazyHGrid,适合规则网格布局(无需第三方)。

6. 加载与提示

  • SkeletonUI - 核心优势:优雅的“骨架屏”实现,支持列表、卡片等多种布局,解决数据加载时的“空白等待”问题。
  • AlertToast - 核心优势:仿苹果原生样式的提示框,支持成功/失败/加载等状态,可自定义图标和文字。

五、系统学习资源(按“学习路径”分类)

1. 零基础入门

2. 速查与工具

  • SwiftUI Cheat Sheet - 特点:常用代码片段合集(布局、动画、手势等),可打印出来当“手边手册”。
  • Xcode SwiftUI Preview 技巧 - 特点:教你用Preview快速调试UI、模拟不同设备/系统版本,提升开发效率。

3. 高级深入

  • The SwiftUI Lab - 特点:解析SwiftUI“黑盒”原理(如布局优先级、视图生命周期),解决复杂场景的“疑难杂症”。

六、开源实战应用(看源码学架构)

通过跑通真实项目,理解SwiftUI在实际开发中的“落地方式”。

iOS 应用

  • MovieSwiftUI - 技术栈:SwiftUI + Observation + Async/Await + TMDB API,学习点:网络请求封装、列表懒加载、复杂页面布局。
  • Expenso-iOS - 技术栈:SwiftUI + MVVM + SwiftData,学习点:本地数据持久化、图表展示、主题切换。

macOS 应用

  • ControlRoom - 技术栈:SwiftUI + Xcode Simulator API,学习点:跨应用交互、桌面端UI设计、工具类App开发。

七、深度文章推荐(聚焦高频问题)

1. 基础原理

2. 状态管理

3. 性能优化

4. 跨平台适配


学习建议:先通过“官方教程+100天计划”打基础,再用“WWDC专题+深度文章”追新特性,最后靠“开源库+实战项目”练落地能力。SwiftUI更新快,记得定期关注苹果开发者官网的更新日志哦!

About

🌮 Awesome resources, articles, libraries about SwiftUI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published