0

次のScrollview2つのボタンとともに画像を表示するために使用しています。

今私の問題は、ユーザーが画像をスクロールしているとき、右から左へのスクロールか、その逆かを識別したいということです。この目的のために、スクロールビューcontentOffsetとスクロールビューを計算する必要がありますframe sizeが、それらの値を計算する方法がわかりません。今でも私は使用しました:

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset NS_AVAILABLE_IOS(5_0){}

この方法。

提案が必要です。

4

2 に答える 2

0
- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView1 willDecelerate:(BOOL)decelerate;
{
    CGFloat pageWidth = scrollView.frame.size.width;

    float fractionalPage = scrollView.contentOffset.x / pageWidth;

    NSInteger page = lround(fractionalPage);

    if (previousPage != page){

        if ([scrollView.panGestureRecognizer translationInView:scrollView.superview].x > 0){

            NSLog(@"-1");
        } else {

            NSLog(@"+1");
        }
    }
}
于 2014-05-13T05:00:42.373 に答える
0

こんにちは、水平方向にスクロールしている場合は、速度に応じて次または前のどちらに移動するかがわかります.x

速度.x > 0 ?(int) _currentIndex + 1 :(int) _currentIndex - 1;

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


    CGFloat xAxisVisible= self.uiScrollDetails.contentOffset.x;
    self.currentIndex=xAxisVisible/320;

    NSLog(@"Dragging - You are now on page %i",(int) self.currentIndex);
}
于 2014-05-13T05:04:50.173 に答える