对零编程基础的人来说,接触编程最好从学习 UI 框架开始,这样能够尽快做出一些看得见摸得着的东西,不会太懵。SwiftUI 框架的内容特别多,现在网上比较好的有《SwiftUI by Example》这个英文课程,相应的有人做了翻译(点这里查看)。我自己在学习过程中也参考着整理了以下的知识框架,希望在今后的实践中,能够方便地快速定位问题。
而如果你跟我一样是零基础的小白,近期才接触苹果开发,以下是一些建议:
- 完全不用考虑“选择学习 SwiftUI 还是 UIKit ”这种问题,结论是:先忽略旧框架,直接学习 SwiftUI 。待日后技能升级了,再考虑更多的事情
- 有必要在学习过程中都按自己理解去整理这么一个目录。有了自己的框架,就算不需要完全记住,只是搜问题也会比在网上搜来的快
- 不要在意最初的知识框架是否整理得完善和准确,就按当下的理解来;等以后积累了更多的知识理解,再不断地去完善修改
- 抛弃掉什么都想要记住的执念,不然过程中经常会怀疑自己。只要遇到问题的时候,知道去哪里找答案,甚至复制参考代码就行了,
Swift 基础
内容视图
内容视图主要指一些用于呈现的视图,包括文本、图像等等。
- 文本视图:Text、AttributedString、Label
- 图像视图:Image、SF Symbols、AsyncImage
- 颜色渐变:Color、Gradients、Mesh
- 路径形状:path、shape
- 多媒体视图:VideoPlayer、SpriteView
- ImageRenderer:将 SwiftUI 视图转换为图像、PDF
控件
主要是用于交互的各类原子视图
- 文本类输入控件:TextField、TextEditor、SecureField
- 按钮:Button
- 开关:Toggle
- 滑动条:Slider
- 步进器:Stepper
- 选择器:Picker
- 颜色选择器:ColorPicker
- 日历选择器:DatePicker
- 图片选择器:PhotosPicker
- 链接:Link、ShareLink
- 进度视图:ProgressView
布局
和内容及输入无关的,主要为布局存在的视图
组件
SwiftUI提供的一系列界面组件
- Alert、ConfirmationDialog、ActionSheet
- Menu、ContextMenu
- Sheet、Popover
- ContentUnavailableView
- ForEach
- List
- ListRow
- TabView
导航
用于跳转的导航视图
- NavigationStack
- NavigationBar、ToolBar
- NavigationLink、NavigationDestination
- NavigationPath
- NavigationSplitView