您可以通过更改颜色线来实现这一点:
gradient.colors = [
UIColor(white: 1.0, alpha: 0).cgColor,
UIColor(white: 1.0, alpha: 1).cgColor,
UIColor(white: 1.0, alpha: 0).cgColor
]
或者,如果您想更好地控制渐变,您也可以使用下面的代码并调整位置和/或颜色 alpha 值:
let gradient = CAGradientLayer()
gradient.frame = view.bounds
gradient.colors = [
UIColor(white: 1, alpha: 0).cgColor,
UIColor(white: 1, alpha: 1).cgColor,
UIColor(white: 1, alpha: 1).cgColor,
UIColor(white: 1, alpha: 0).cgColor
]
gradient.locations = [0, 0.4, 0.6, 1]
view.layer.mask = gradient
文档中的原因;
一个可选图层,其 Alpha 通道用于遮盖图层内容。
图层的 Alpha 通道决定了图层内容和背景的显示程度。完全或部分不透明的像素允许底层内容显示出来,但完全透明的像素会阻挡该内容。