Применение нескольких CAGradientLayer для маскировки представления - PullRequest
0 голосов
/ 08 апреля 2019

У меня есть вид с маской градиентного слоя, чтобы применить эффект затухания сверху вниз и снизу вверх, код выглядит примерно так:

gradient = CAGradientLayer()
gradient.frame = label.bounds
gradient.colors = [UIColor.clear.cgColor, UIColor.black.cgColor, UIColor.black.cgColor, UIColor.clear.cgColor]
gradient.locations = [0, 0.1, 0.9, 1]
view.layer.mask = gradient

Теперь я хочу добавить еще один слой градиента, чтобы добавитьэффект затухания слева направо.

Поскольку «маска» может получить только 1 слой, я попытался создать еще один CAGradientLayer () и добавить его в качестве подслоя к вертикальному градиенту, который не работал.

Есть идеи, как этого достичь?

1 Ответ

0 голосов
/ 08 апреля 2019

Вы можете использовать это, чтобы добавить несколько слоев

 view.layer.insertSublayer(youLayer, at: 0)
...