【发布时间】:2019-09-08 16:56:47
【问题描述】:
我在UIScrollView 中有一个UIImageView 对象(用于缩放)。此外,UIImageView 还包含子视图。我正在使用以下功能放大UIImageView。
func viewForZooming(in scrollView: UIScrollView) -> UIView? {
return self.imageView
}
它对UIImageView 非常有效。
问题是在缩放这些子视图时,它也会以相同的方式缩放这些子视图。有没有办法禁用这些子视图的缩放?
【问题讨论】:
-
你为什么不把它们放在滚动视图之外呢?或者在第一个透明背景上方的另一个滚动视图中?
-
@MaticOblak 我需要子视图在图像视图中的位置。
-
那我不明白你的问题是什么。就像图像缩放时子视图应该改变位置但它们不应该改变它们的大小一样?有点像地图上的注释;当您放大它们时,它们仍然指向同一个位置图,但它们的大小没有增加?您可以使用 UIView 中的“转换”方法。将原始坐标从图像视图转换为滚动视图的超级视图,并将注释移到那里。只需更新 scrollViewDidScroll 上的位置
-
是的,就像地图上的注释一样。我会试试的,谢谢。
标签: ios swift uiscrollview uiimageview zooming