我在UIImageView
内有一个可缩放的UIScrollView
。如果用户双击图像,UIScrollView
将放大,直到图像填满屏幕。我在代码中设置了缩放比例。这部分代码效果很好。这是代码:
func scrollViewDoubleTapped(tapGesture: UITapGestureRecognizer) {
// Zoom into the zoom scale if currently at min zoom, else zoom to min zoom
if (scrollView.zoomScale == scrollView.minimumZoomScale) {
scrollView.setZoomScale(zoomScale, animated: true)
} else {
scrollView.setZoomScale(scrollView.minimumZoomScale, animated: true)
}
}
如果我想在加载视图时缩放到指定的缩放比例,则会出现问题。当我尝试这种缩放时,偏移是不正确的。我在函数println
中有scrollViewDidEndZooming
来帮助显示偏移量,比例和锚点。
func scrollViewDidEndZooming(scrollView: UIScrollView, withView view: UIView!, atScale scale: CGFloat) {
println("did end zooming with scale: \(scale)")
println("offset: \(scrollView.contentOffset)")
println("anchor point: \(scrollView.layer.anchorPoint)")
}
当我在加载视图后尝试缩放时,我得到值:
did end zooming with scale: 2.27556
offset: (490.0, -0.0)
anchor point: (0.5, 0.5)
哪个y偏移不正确。当我双击图像放大时,我得到:
did end zooming with scale: 2.27556
offset: (490.0, 653.0)
anchor point: (0.5, 0.5)
是否有人能够帮助我弄清楚为什么我在加载视图时会出现问题缩放。我通过viewDidAppear
函数进行调用。