У меня есть страница с подпредставлением c. 50% экрана. Он имеет плавную прозрачную заливку (текст исчезает при прокрутке экрана вверх).
Однако, когда страница появляется, она кажется «липкой» вот так ...
У меня есть функция, которая создает подпредставление с именем setGradient
, которое я сейчас вызываю так:
override func viewWillLayoutSubviews() {
super.viewWillLayoutSubviews()
setGradient()
}
Я пытался назвать это в viewDidLoad
, viewWillAppear
, viewDidAppear
и получать одинаковый результат отовсюду. Я подумал, что вызов функции до появления представления будет плавным, но все равно прерывистым.
Установить код градиента можно здесь:
func setGradient(){
if let containerView = textViewOutlet.superview {
let gradient = CAGradientLayer(layer: containerView.layer)
gradient.frame = containerView.bounds
gradient.colors = [UIColor.clear.cgColor, UIColor.blue.cgColor]
gradient.startPoint = CGPoint(x: 0.0, y: 0.0)
gradient.endPoint = CGPoint(x: 0.0, y: 0.5)
containerView.layer.mask = gradient
}
}
Не вижу, что я здесь делаю неправильно.