使用隐藏视图的自动布局

时间:2014-03-03 11:10:23

标签: ios xcode5 autolayout

我有一个UIScrollView的视图控制器。在滚动视图中,我有两个UIViewsviewA位于viewB之上。我在这个项目中使用Xcode 5和自动布局。我想做的是隐藏viewA,将viewB移动到viewA所在的顶部(技术上,仍然坐着,只是隐藏)。

我看了这个答案:How to use auto-layout to move other views when a view is hidden?

然而它并没有真正帮助我。我将一个常量的IBOutlet连接到滚动视图顶部的垂直间距,并在隐藏viewA时将其设置为0.0f。但是它根本不会改变我的UI。

1 个答案:

答案 0 :(得分:2)

首先获取两个子视图的SuperView NSlayoutConstraints Outlets的Top Space,然后执行以下操作: -

[self.aView setHidden:YES];
if([self.aView isHidden])
{
    self.bViewTopConstraint.constant = self.aViewTopConstraint.constant;
}

使用这个第二个UiView将转到第一个UIView的位置。

对于Scrollview,您必须正确设置约束值。无需设置任何内容。一旦你设置了constriants scrollview将自动工作。 查看附带的屏幕截图。

enter image description here