我Scrollview
用于显示图像以及两个按钮上一个和下一个。
现在我的问题是当用户滚动图像时我想识别它是从右向左滚动还是反之亦然。为此,我必须计算scrollview contentOffset
和scrollview frame size
,但我不知道如何计算这些值。
现在我仍然使用:
- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset NS_AVAILABLE_IOS(5_0){}
这种方法。
需要任何建议。
答案 0 :(得分: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");
}
}
}
答案 1 :(得分:0)
嗨,如果你是水平滚动,你会知道你是下一个还是上一个,取决于velocity.x
velocity.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);
}