如何删除隐藏的 UIImage 的空间?

PPS*_*ein 0 uiimageview ios autolayout

我被困住了,我不知道如何删除隐藏的 UIImage 的间距。目的是如果flag为true,则显示UIImage,如果flag为false,则隐藏UIImage但该隐藏图像的空间仍然存在。

我正在使用自动布局。

在此处输入图片说明

dst*_*eba 5

如果您使用自动布局和故事板,您可以设置创建一个 IBOutlet 作为您的控制器类的属性。然后将其连接到 UIImage 的宽度约束。在您的代码中,当 UIImage 隐藏时,您将 IBConstraint 设置为 0。当它显示时,您将 IBConstraint 设置回正常宽度。

(在 Controller.h 中)

@property (weak, nonatomic) IBOutlet NSLayoutConstraint *constraintImageWidth;
Run Code Online (Sandbox Code Playgroud)

(在 Controller.m 中)(伪代码)

if(hidden){
     constraintImageWidth.constant = 0;
}
else{
     constraintImageWidth.constant = 30;
}
Run Code Online (Sandbox Code Playgroud)

在 Storyboard 中设置的标签左侧和图像右侧之间也应该有一个水平约束。

在此处输入图片说明

您可以在此处检查宽度框以添加宽度约束。

在此处输入图片说明

您可以在此处将参考插座连接到控制器上的 IBOutlet