修复放大或缩小图像时UIButton的位置

时间:2018-12-24 12:51:01

标签: ios swift uiscrollview imageview zoom

原始屏幕截图:

Original Screen Shot

我需要显示一张图像,在它上面有一些按钮,它们对应于图像的某些可单击区域,问题是图像具有缩放功能,而当我缩放图像时,按钮不会停留在同一位置如下图所示:

Problem Screen Shot

我的问题是按钮没有像显示在原始图像中那样出现在正确的位置。

MainStoryBoard约束屏幕截图:

Screen Shot

2 个答案:

答案 0 :(得分:1)

您需要将视图放置在下面的层次结构中;

-> UIView
 ->ScrollView
   ->UIImageView
 ->UIButton
 ->UIButton
 ->UIButton

因此UIScrollView的Z位置应为0,而UIButtons的Z位置应位于其顶部。

您可以从以下位置获取有关如何使用UIScrollView缩放UIImageview的更多信息: https://www.raywenderlich.com/560-uiscrollview-tutorial-getting-started

此外:UIScrollView和UIButtons约束不应相互关联。

答案 1 :(得分:0)

尝试相对于父视图添加按钮约束,否则您不能创建约束对象,例如, @IBOutlet弱var heightConstraint:NSLayoutConstraint!,其中heightConstraint是要拖动的对象从特定约束中进行缩放,因此在完成缩放后,可以使用属性heightConstraint.constant = x

使约束恒定