绘画与动画
使用颜色,形状和阴影增强视图,并自定义视图状态之间的动画过渡。
总览
使用绘图工具组合形状或为您自己设计的形状定义自定义路径。将样式从环境可感知的颜色应用到丰富的渐变到形状的前景,背景和轮廓。
话题
必需品
绘制路径和形状
每当用户访问列表中的地标时,都会收到徽章。当然,对于要获得徽章的用户,您需要创建一个。本教程将通过结合路径和形状来指导您完成创建徽章的过程,然后将其与代表位置的另一个形状进行叠加。在Swift UI中构建自定义视图
在SwiftUI中使用数据驱动的过渡和动画创建自定义视图。protocol Shape
绘制视图时可以使用的2D形状。
动画
动画视图和过渡
使用SwiftUI时,无论效果在何处,都可以分别对视图或视图状态进行动画更改。SwiftUI为您处理了这些组合,重叠和可中断动画的所有复杂性。struct Animation
protocol Animatable
一种类型,该类型描述如何为视图的属性设置动画。protocol AnimatableModifier
可以使用动画创建另一个修改器的修改器。func withAnimation<Result>(Animation?, () throws -> Result) rethrows -> Result
返回使用提供的动画重新计算视图主体的结果。struct AnimatablePair
一对可设置动画的值,其本身是可设置动画的。struct EmptyAnimatableData
可动画数据的空类型。struct AnyTransition
类型擦除的过渡。
形状
struct Rectangle
在包含矩形的视图框架内对齐的矩形。enum Edge
指示矩形的一个边的枚举。struct RoundedRectangle
具有圆角的矩形,在包含该矩形的视图框架内对齐。struct Circle
以包含它的视图框架为中心的圆。struct Ellipse
在包含椭圆的视图框架内对齐的椭圆。struct Capsule
胶囊形状在包含它的视图框架内对齐。struct Path
2D形状的轮廓。
变形的形状
protocol InsettableShape
能够插入自身以产生其他形状的形状类型。struct ScaledShape
对其应用了比例转换的形状。struct RotatedShape
具有旋转变换的形状。struct OffsetShape
具有平移偏移变换的形状。struct TransformedShape
具有仿射变换的形状。struct ContainerRelativeShape
由当前容器形状的插入版本代替的形状。如果未定义容器形状,则将其替换为矩形。
绘画,样式和渐变
struct Color
与环境有关的颜色。struct ImagePaint
通过重复图像的区域来填充形状的形状样式。struct Gradient
表示为色标阵列的色阶,每个色阶都有一个参数位置值。struct LinearGradient
线性渐变。struct AngularGradient
角度渐变。struct RadialGradient
径向渐变。struct ForegroundStyle
一种样式,可根据当前上下文显示前景的正确填充。struct FillStyle
栅格化矢量形状的样式。struct BackgroundStyle
一种基于当前上下文显示正确填充背景的样式。protocol ShapeStyle
将形状变成视图的方法。enum RoundedCornerStyle
定义圆角矩形的角的形状。struct SelectionShapeStyle
一种可用作所选元素的背景的样式。struct SeparatorShapeStyle
适用于前景分隔符或边框线的样式。struct StrokeStyle
几何
struct GeometryProxy
用于访问容器视图的大小和坐标空间(用于锚点分辨率)的代理。struct GeometryReader
一个容器视图,根据其自身大小和坐标空间定义其内容。protocol GeometryEffect
在不改变其祖先或后代的情况下,改变视图的视觉外观的效果。struct Angle
您可以通过弧度或度来访问其值的几何角度。struct Anchor
从锚源和特定视图派生的不透明值。struct UnitPoint
enum CoordinateSpace
struct ProjectionTransform
protocol VectorArithmetic
可以用作可动画类型的可动画数据的类型。
加入我们一起学习SwiftUI
QQ:3365059189
SwiftUI技术交流QQ群:518696470