2016-01-06 4 views
1

У меня есть вертикальное представление прокрутки, которое нужно прокручивать, но я хочу использовать левый и правый салфетки для чего-то другого. У меня есть поведение для каждого рабочего направления, но я хочу ограничить угол прокрутки, который прокручивает UIScrollView, так что он должен быть действительно, по-настоящему вертикальным, и большинство левых или правых наклонных пальцев активируют другое поведение, а не измените положение прокрутки.Ограничить угол прокрутки для прокрутки UIScrollView

Я знаю, что я могу получить угол прокрутки, переопределяя scrollViewDidScroll и сравнивая предыдущий и текущий contentOffset, но я не могу остановить прокрутку прокрутки.

Как я могу ограничить угол прокрутки, который прокручивает UIScrollView?

ответ

0

Я думаю, scrollViewDidScroll слишком поздно для того, чего вы хотите достичь.

Может пробуйте установить directionalLockEnabled свойство UIScrollView к YES. (не уверен, если это помогает ... но играть с ним)

И/Или реализовать метод UIScrollViewDelegate - (void)scrollViewWillBeginDragging:(UIScrollView *)scrollView и в этой реализации методов захвата указатель на panGestureRecognizer(только для чтения) свойство UIScrollView прошел в

Оттуда называют translationInView:. на UIPanGestureRecognizer Передает вид в которой система координат перевод сковороду жест должен быть вычислен, и с CGPoint вернулся использовать тригонометрию, чтобы вычислить угол, и если это не в заданных пределах называют setTranslationInView: на UIPanGestureRecognizer восстановить.

Смежные вопросы