【问题标题】:UIScrollView.contentSize seems to grow with zoomUIScrollView.contentSize 似乎随着缩放而增长
【发布时间】:2012-07-31 21:43:54
【问题描述】:
所以我的scrollView的contentSize最初等于我的图像的框架,但似乎我缩放得越多,contentSize就越大。因此,当 scrollView 放大时,它周围有一个巨大的间隙。动态更新 - (void)scrollViewDidZoom:(UIScrollView *)aScrollView 中的 contentSize 似乎不起作用。我错过了什么吗?
注意:间隙仅在垂直方向可见(即:在 imageView 的上方和下方)
【问题讨论】:
标签:
ios
uiscrollview
scroll
zooming
【解决方案1】:
我认为在 zooming 的同时更新 contentSize 是不可能的。这是因为:
滚动视图还可以处理内容的缩放和平移。作为用户
做出捏合或张开手势,滚动视图会调整
偏移量和内容的比例。当手势结束时,对象
管理内容视图应该更新内容的子视图
有必要的。 (请注意,手势可以结束,而手指仍然可以
向下。)当手势正在进行时,滚动视图不会
向子视图发送任何跟踪调用。
(Apple docs)
您应该根据zoomScale 更新您的contentSize 在用户完成zooming 之后使用:
- (void)scrollViewDidEndZooming:(UIScrollView *)scrollView
withView:(UIView *)view
atScale:(float)scale