iOS:将非缩放按钮添加到可缩放图像

时间:2015-09-08 13:17:35

标签: ios objective-c

已经看过,但无法在SO上找到解决方案。

问题:我想将按钮添加到可缩放的UIImageView但是当图像放大时,按钮会保留在图像上的相同位置但不会缩放(即它们保持不变相同的尺寸)。这类似于地图在地图上有许多引脚的情况,当你放大地图时,如果引脚靠得很近,它们会分开并保持相同的大小,而不是用地图缩放到大尺寸!

我的尝试:我了解如何通过使用滚动视图来缩放图像但是我不确定视图层次结构应该是什么。按钮位置取决于图像,因此您无法仅将按钮添加到滚动,因为它们在缩放时不会移动。但是,如果我将按钮添加到图像视图,则它们会随图像一起缩放(因为我返回了委托方法viewForZoomingInScrollView的图像视图)。我尝试使用来自Zooming a background image without zooming the overlay的线索来修改按钮的覆盖层,但是还没有找到任何有用的东西。

非常感谢任何帮助,非常感谢!

1 个答案:

答案 0 :(得分:3)

您不应将该按钮作为子视图添加到滚动视图中。相反,请尝试将按钮作为子视图添加到滚动视图的超级视图中。

[superview addSubview:scrollView];
[superview addSubview:button];

您的视图层次结构如下所示:

<superview>
    <scrollView>
    <button>

由于该按钮不是滚动视图的子视图,因此不会进行缩放。