基本
苹果今年整理了一份
SwiftUI
教程,这是一项出色的工作。
属性包装器是用于支持
SwiftUI
框架的Swift
语言新功能之一。要了解最重要的属性包装器,例如@State
,@Binding
,@ObservedObject
,@EnvironmentObject
和@Environment
.
• https://developer.apple.com/tutorials/swiftui/
• https://swiftwithmajid.com/2019/06/12/understanding-property-wrappers-in-swiftui/
• https://swiftwithmajid.com/2019/11/19/you-have-to-change-mindset-to-use-swiftui/
布局系统
SwiftUI
也有一个全新的布局系统,它比AutoLayout
拥有更多的乐趣。新的布局系统非常强大且直接。
• Inspecting the View Tree – Part 1: PreferenceKey
• Inspecting the View Tree – Part 2: AnchorPreferences
• Inspecting the View Tree – Part 3: Nested Views
框架
SwiftUI
与React
框架有很多相似之处,为iOS
开发带来了许多新概念。
• Introducing Container views in SwiftUI
• Modeling app state using Store objects in SwiftUI
• Redux-like state container in SwiftUI
SwiftUI 的声明式
SwiftUI
是一个声明式框架。这意味着您声明要实现的目标,然后框架会处理该问题并决定如何呈现您的视图。根据上下文,完全相同的视图可以具有另一种外观。
• Reusing SwiftUI views across Apple platforms
• Composable styling in SwiftUI
动画和交互
SwiftUI
使用动画来为您处理所有状态更改。它使我们能够以一种非常直接且美观的方式来构建交互式视图。
• Building Bottom sheet in SwiftUI
• Building Pager view in SwiftUI
• Advanced SwiftUI Animations – Part 1: Paths
• Advanced SwiftUI Animations – Part 2: GeometryEffect
• Advanced SwiftUI Animations – Part 3: AnimatableModifier
辅助功能
SwiftUI
采取了另一举措,使我们的应用程序默认可访问。它开箱即用,但是它也提供了一个非常好的API
来自定义可访问性。
绘制自定义视图
SwiftUI
提供了一个Shape API
,使我们能够快速构建自定义视图。