如何创建方形的径向渐变?
答案 0 :(得分:1)
您可以直接在UIView子类中绘制径向渐变,如下所示:
override func draw(_ rect: CGRect) {
let context = UIGraphicsGetCurrentContext()!
let colorSpace = CGColorSpaceCreateDeviceRGB()
let colors = [UIColor.red.cgColor, UIColor.green.cgColor] as NSArray
let gradient = CGGradient(colorsSpace: colorSpace, colors: colors, locations: nil)!
let center = CGPoint(x: bounds.midX, y: bounds.midY)
context.drawRadialGradient(gradient, startCenter: center, startRadius: 0, endCenter: center, endRadius: bounds.width/2, options: [.drawsAfterEndLocation])
}
或者只是看看这个lib,就可以开箱即用 - https://github.com/maxkonovalov/MKGradientView
答案 1 :(得分:0)
我可以建议你两种方式。
首先:
你可以在另一个内部制作2个UIViews,并对内部UIView进行约束,使其位于中心,小于另一个。然后你将内部颜色添加到内部UIView黄色中,对于另一个UIView,你可以使用这个库https://github.com/ViccAlexander/Chameleon并使用黄色和背面制作一个UIGradientStyleRadial颜色。
第二: 您可以使用https://www.paintcodeapp.com/,它对您的应用来说也更轻便