【发布时间】:2016-08-10 05:48:19
【问题描述】:
我遇到了问题,我不知道如何实现,请给我任何解决方案。
UIView ----UIScrollview ------Imageview(最少 10 个)
每个Imageview添加到scrollview中,每个ImageView都包含UITapgesture recongizer。Tapgesture用于获取图像并放大显示到Nextviewcontroller中。
这里我遇到了问题,当我滚动 UIScrollview 时,我想通过触摸滚动视图的内部或某处来停止滚动。如果我触摸任何地方,它就会进入下一页。
在页面中,如果 UIScrollview 正在滚动(用户当前没有触摸屏幕),然后用户点击屏幕,屏幕应该停止但不应该放大 Imageview。目前画面停止,但点击的图片正在放大中。
到目前为止的代码...
UITapGestureRecognizer *singleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(singleTapAction:)];
singleTap.numberOfTapsRequired = 1;
singleTap.delegate = self;
singleTap.cancelsTouchesInView = NO;
hypeScroll.canCancelContentTouches = NO;
- (BOOL)gestureRecognizer:(UIGestureRecognizer *)gestureRecognizer shouldRecognizeSimultaneouslyWithGestureRecognizer:(UIGestureRecognizer *)otherGestureRecognizer {
//return YES;
// if (gestureRecognizer.view.superview.tag == hypeScroll.tag) {
// return NO;
// }
return YES;
}
给我解决办法,我卡了很久了,
提前致谢
【问题讨论】:
-
您的图像视图覆盖了整个滚动视图,还是有任何空间可以点击滚动视图?
-
是的,它覆盖了整个滚动视图。两个图像之间只有 2px 的空间..
-
我建议
UICollectionView来实现这种东西!!
标签: ios objective-c uiscrollview uitapgesturerecognizer