【发布时间】:2011-07-19 18:01:41
【问题描述】:
如何在 iOS 中使用 Core Graphics / Quartz 2D API 绘制这样的锥形渐变?
(来源:ods.com.ua)
【问题讨论】:
标签: ios core-graphics gradient radial-gradients
如何在 iOS 中使用 Core Graphics / Quartz 2D API 绘制这样的锥形渐变?
(来源:ods.com.ua)
【问题讨论】:
标签: ios core-graphics gradient radial-gradients
如果有人还在寻找解决方案,Apple 终于在 iOS 12 中引入了.conic 渐变类型。完美的遮罩以创建带有渐变的圆形进度条。
例子:
let gradientLayer = CAGradientLayer()
gradientLayer.startPoint = CGPoint(x: 0.5, y: 0.5)
gradientLayer.endPoint = CGPoint(x: 0.5, y: 0)
gradientLayer.type = .conic
gradientLayer.colors = [UIColor.red.cgColor, UIColor.orange.cgColor, UIColor.green.cgColor]
gradientLayer.frame = bounds
【讨论】:
最近我为此制作了一个自定义的 CALayer 类:AngleGradientLayer
它没有经过性能测试,所以要小心。
【讨论】:
【讨论】:
这种渐变风格没有 Quartz 功能。除非您准备好深入研究其背后的数学,否则我建议您为此使用预制图像。如果您只需要它用于不透明蒙版,这不是问题。
【讨论】: