当我们在UIScrollView中缩小子视图时,实际上会发生什么变化?

时间:2010-03-08 11:58:14

标签: iphone uiscrollview

我在uiscrollview中有一个子视图。然后我把它缩小。所以它变得更大,并允许我滚动它。

那么这里究竟发生了什么变化? UIScrollView的ContentSize?

2 个答案:

答案 0 :(得分:1)

如果您没有手动响应缩放比例的变化(就像我在this answer中所描述的那样),那么从-viewForZoomingInScrollView:委托方法返回的视图只是应用了缩放变换通过UIScrollView。视图的帧大小没有变化,只是图形变换(这就是为什么你会看到更高比例因子的模糊)。

答案 1 :(得分:0)

scrollview的内容大小在逻辑上保持不变。如果检查滚动视图的框架,它将保持不变。

我认为所有改变的都是CGLayers的缩放。放大时,它会缩小剪裁区域框架,但会向上缩放CGLayer变换。换句话说,所有逻辑元素仍然存在,它只是选择绘制和显示它的不同部分。

在“iPhone应用程序编程指南”中,他们对帧,剪切区域和视图上的各种变换之间的关系有了很好的解释。