gpt4 book ai didi

ios - 使用 UIScrollView 的渐变背景颜色

转载 作者:行者123 更新时间:2023-11-28 07:48:11 28 4
gpt4 key购买 nike

我知道这个问题可能看起来像是重复的,但是大多数答案都忽略了在 View 中滚动的事实。

当我滚动时,渐变颜色在整个滚动中保持不变,而不是完全用于背景。例如, View 的高度是 1500,而我正在查看的当前 View 是(示例)450,那么在这个 450 中,梯度在其他 1050 中是恒定的,而不是在滚动时它应该变得越来越暗(到其他颜色)。这是一个更好理解的图像

https://ibb.co/euKcLd

https://ibb.co/bHNxLd

https://ibb.co/eZgA6J

这是我使用的代码:

func setGradientColour() {
let colorTop = UIColor(red: 255.0/255.0, green: 149.0/255.0, blue: 0.0/255.0, alpha: 1.0).cgColor
let colorBottom = UIColor(red: 255.0/255.0, green: 0/255.0, blue: 0/255.0, alpha: 1.0).cgColor
let gradientLayer = CAGradientLayer()
gradientLayer.colors = [colorTop, colorBottom]
gradientLayer.locations = [0.0, 1.0]
gradientLayer.frame = self.view.bounds
self.view.layer.insertSublayer(gradientLayer, at: 0)
}

在 viewDidLoad 方法中被调用。

最佳答案

原来代码是错误的,必须更改为:

func setGradientColour() {
let colorTop = UIColor(red: 255.0/255.0, green: 149.0/255.0, blue: 0.0/255.0, alpha: 1.0).cgColor
let colorBottom = UIColor(red: 255.0/255.0, green: 0/255.0, blue: 0/255.0, alpha: 1.0).cgColor
let gradientLayer = CAGradientLayer()
gradientLayer.colors = [colorTop, colorBottom]
gradientLayer.locations = [0.0, 1.0]
gradientLayer.frame = scrollViewTest.bounds
scrollViewTest.layer.insertSublayer(gradientLayer, at: 0)
}

其中 scrollViewTest 是 scrollView 的导出。错误是我调用的是普通 View 层而不是 ScrollView ,这减少了 View 的长度。

关于ios - 使用 UIScrollView 的渐变背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50403228/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com