Нет способа отследить прокрутку с более высокой точностью.
Лучше всего проверить, что contentOffset
больше или меньше того, что вы ищете (в зависимости от обстоятельств).
Вам также понадобится способ проверить, была ли достигнута точка отсечения (чтобы вы не выполнялись несколько раз).
private var triggeredAnimation = false
func scrollViewDidScroll(_ scrollView: UIScrollView) {
if !triggeredAnimation, scrollView.contentOffset.y > 100 {
triggeredAnimation = true
// Cut off point reached, do whatever you want now
}
}
Конечно, если какое-либо действие, которое вы выполняете, является обратимым, вам нужно будет выполнить сброс при переходе в другую сторону.