UIImageView
中包含UIScrollView
。图像(通常)很大,因此用户可以将其缩小以查看整个图像。
在缩小时,UIScrollView
将ImageView
捕捉到滚动视图的左上角。我希望用户可以定位它,并且还没有找到“关闭它”的方法。
有点像总是允许滚动,而不是只允许在放大图像时滚动。也许它太重要了?
有人知道吗?最初,我只是想手动创建这个功能。但是UIImageViews不喜欢调整到新的大小(我已经尝试了所有内容而无法调整大小UIImageView
除非我从imageView
删除图片,更改框架,然后重新调整加上它。)
答案 0 :(得分:5)
我最终禁用了UIScrollView
的{{1}}并在自定义中进行了修补。
以下是关于如何禁用它的快速摘录:
panGestureRecognizer
那里有一些黑客工作,但这是因为// Disable our GestureRecognizer
for (UIGestureRecognizer *gesture in scrollView.gestureRecognizers){
if ([[NSString stringWithFormat:@"%@",[gesture class]] isEqualToString:@"UIScrollViewPanGestureRecognizer"]){
[gesture setEnabled:NO];
break;
}
}
已经将GestureRecognizer的类改为“UIScrollViewPanGestureRecognizer”。如果你试图使用那个类,编译器会对你大喊大叫(那里可能有更好的解决方案)。
答案 1 :(得分:1)
如果您在UIImageView
的位置0,0找到UIScrollView
,那么它总是在左上角。如果您希望它在滚动视图中居中时小于视图,则需要将其放置在那里。检查其-size
是大于还是小于滚动视图。如果它小于滚动视图,请将其-center
设置为与滚动视图相同。
答案 2 :(得分:0)
在类似问题here
上查看我的答案