Направление UIScrollView от scrollViewWillBeginDecelerating - PullRequest
1 голос
/ 06 мая 2011

Возможно ли получить направление, в котором UIScrollView прокручивается, в методе;

- (void) scrollViewWillBeginDecelerating: (UIScrollView *) scrollView

Если да, то как этого достичь?

Ответы [ 3 ]

2 голосов
/ 06 мая 2011

вы можете попробовать что-то вроде этого:

- (void)scrollViewDidScroll:(UIScrollView *)sender 
{
  xCoord = scrollview.contentOffset.x;
}

-(void) scrollViewWillBeginDecelerating:(UIScrollView *)sender 
{

   if (xCoord > scrollView.contentOffset.x) {
     //RIGHT
   } else if (xCoord < scrollView.contentOffset.x) {
     //LEFT
   }

}

сохранить координату x элемента scrollViews contentOffset, когда он начнет прокрутку, а затем сравнить его в scrollViewWillBeginDecelerating

0 голосов
/ 08 мая 2019

Непосредственно не отвечая на вопрос, но может быть полезно для некоторых - получить направление, в котором UIScrollView будет замедляться:

func scrollViewWillBeginDecelerating(_ scrollView: UIScrollView) {
  let point = scrollView.panGestureRecognizer.translation(in: scrollView)
  if point.x < 0 {
    // Will decelerate to the right
  }else if point.x > 0{
    // Will decelerate to the left
  }
} 
0 голосов
/ 08 августа 2013

В случае пейджинга попробуйте это

-(void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView{

    _xCoord = scrollView.contentOffset.x;
}

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{

    if (_xCoord > scrollView.contentOffset.x) {
      //right
    } else if (_xCoord < scrollView.contentOffset.x) {
        //LEFT

    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...