我有3个嵌套视图,主视图(父级) - > UIScrollView - > ImageView的。 我正在构建一个内容查看器,用户可以在其中滑动以从列表中获取下一个/上一个图像。但是我希望只有在用户到达最右边/底部(图像末尾)或最左边/顶角之后才能加载下一个图像。涉及过渡动画,其中下一个/上一个图像在加载下一个项目时跟随滑动。 我该如何实现这一目标?
P.S。:我已经尝试在父视图中添加手势识别器,但它不起作用。
答案 0 :(得分:0)
你应该使用滑动手势
UISwipeGestureRecognizer *swipe_left = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swipe_left)];
swipe_left.direction = UISwipeGestureRecognizerDirectionLeft;
[yourView addGestureRecognizer:swipe_left];
UISwipeGestureRecognizer *swipe_right = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(swipe_right)];
swipe_right.direction = UISwipeGestureRecognizerDirectionRight;
[yourView addGestureRecognizer:swipe_right];
-(void)swipe_left
{
//Write your content offset if required
}
-(void)swipe_right
{
someView.contentOffset = CGPointMake(470, 0); //Example
}
问候
迪帕克
新年快乐!!
答案 1 :(得分:0)
您似乎正在使用滚动视图移动当前图像,然后当用户遇到两个触发点(左上/右下)中的任何一个时,您想要触发动画并加载下一个图像。如果是这种情况,为什么不使用scrollView委托方法-scrollViewDidScroll:(UIScrollView *)scroller
?在该方法中,您可以检查scrollView的contentOffset
属性,并将其与当前图像的尺寸进行比较。当contentOffset
落在用于触发动画和加载的参数范围内时,请执行此操作。