gpt4 book ai didi

ios - contentOffset 反方向计算

转载 作者:行者123 更新时间:2023-11-28 13:34:10 26 4
gpt4 key购买 nike

我有一个按钮可以改变 scrollOffset 的颜色。我有下面的代码工作,除了它在相反的方向执行动画。我不希望它从透明变为不透明 (0% - 100%),而是相反 (100% - 0%)。我想我计算的偏移量有误,但不确定正确的计算方法是什么?

func scrollViewDidScroll(_ scrollView: UIScrollView) {

// Offset is WRONG
var offset = scrollView.contentOffset.y / 150

if offset > 1 {
offset = 1
button.backgroundColor = UIColor(hue: 1, saturation: 1, brightness: 1, alpha: offset)
} else {
buttomn.backgroundColor = UIColor(hue: 1, saturation: 1, brightness: 1, alpha: offset)
}
}

最佳答案

首先,检查是否大于 1 可以用 min() 代替:

offset = min(1, offset)

由于 contentOffset.y 也可能是负数,您可能希望使用 max() 来防止出现负值:

offset = max(0, min(1, offset))

现在,如果您想翻转方向,只需从 1 中减去该值即可:

offset = 1 - max(0, min(1, offset))

或者,在一行中完成:

let offset = 1 - max(0, min(1, scrollView.contentOffset.y / 150))

最后,设置颜色:

buttom.backgroundColor = UIColor(hue: 1, saturation: 1, brightness: 1, alpha: offset)

关于ios - contentOffset 反方向计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56900237/

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