gpt4 book ai didi

ios - 如何检测用户何时尝试刷卡 "past UIScrollView content offset"?

转载 作者:行者123 更新时间:2023-11-30 11:45:02 26 4
gpt4 key购买 nike

例如,我有一个按钮,当用户点击它时,它将从底部打开一个弹出 ScrollView ,其中有很长的垂直内容。如果用户在 ScrollView 内容偏移位于顶部时尝试向下滑动,我想通过将其动画飞到屏幕底部来关闭弹出的 ScrollView 。

我如何检测该事件?我知道当 ScrollView 使用 scrollViewDidScroll 函数滚动时我可以获取事件。但它没有给我任何关于用户是向上还是向下滚动的信息。因此,我无法检查“当 offset.y 为 0 并且用户仍在滑动 .down 时,然后关闭弹出窗口”。请帮忙。谢谢。

最佳答案

在scrollViewDidScroll(_scrollView: UIScrollView)方法中尝试这个

let scrollDiff = scrollView.contentOffset.y - self.previousScrollOffset

let absoluteTop: CGFloat = 0;
let absoluteBottom: CGFloat = scrollView.contentSize.height - scrollView.frame.size.height;

let isScrollingDown = scrollDiff > 0 && scrollView.contentOffset.y > absoluteTop
let isScrollingUp = scrollDiff < 0 && scrollView.contentOffset.y < absoluteBottom
self.previousScrollOffset = scrollView.contentOffset.y

并将其设置为全局变量 var previousScrollOffset: CGFloat = 0;

您可以打印并检查这是向上还是向下滚动

希望这能给你指明方向

关于ios - 如何检测用户何时尝试刷卡 "past UIScrollView content offset"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48940445/

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