我的用户界面需要大约7-10个不同的渐变。Swift - 大多数代码高效的重用渐变方法?
我的第一个(默认)梯度设置如下:
let gradientLayer = CAGradientLayer()
在我viewDidLoad中:
gradientLayer.frame = self.view.bounds
gradientLayer.colors = [lightBlue, lightPurple]
gradientLayer.locations = [0.0, 1.0]
gradientLayer.zPosition = -1
self.view.layer.addSublayer(gradientLayer)
gradientLayer是默认的渐变。所以我们假设我想定义: gradientVariantOne/gradientVariantTwo/gradientVariantThree(etc.) 但所有这些新的渐变将具有精确的frame/locations/zPosition作为gradientLayer。
如何编写我的代码,以便这些新梯度继承这些属性?这将使代码更加精简,并且容易在未来进行修改。
谢谢
感谢您的回复。 “只需为每个渐变创建一个类似的功能。” - 这是我希望避免的部分。 frame/locations/zPosition属性永远不会改变,所以我不得不重写这10次。那有意义吗? – Joe
我更新了我的答案 – Jelly
完美地工作!谢谢! – Joe