如何设计和显示UIView叠加层

时间:2014-09-04 14:23:21

标签: ios xcode uiview overlay

大家好,我的问题是:我有一个带按钮的MapView,我想用一个覆盖视图触发该按钮,该视图填满整个屏幕(导航栏旁边)。

有没有办法可以在Storyboard中设计叠加层并将其连接到带有某种自定义segue的按钮,或者我是以编程方式设计它还是为动画编写代码?

谢谢!

2 个答案:

答案 0 :(得分:2)

这是使用自动布局的快捷方式:

UIView * view = [UIView new];
busyView.translatesAutoresizingMaskIntoConstraints = NO;
[[[UIApplication sharedApplication] keyWindow] addSubview:busyView];
[self.superview addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"H:|[view]|" options:0 metrics: 0 views:@{@"view": view}]];
[self.superview addConstraints:[NSLayoutConstraint constraintsWithVisualFormat:@"V:|[view]|" options:0 metrics: 0 views:@{@"view": view}]];

这将在主窗口上添加叠加视图,但请注意:

  • 窗口不处理旋转,因此如果您的视图包含某些内容并且您旋转设备,则所有内容都将保留在同一位置。
  • 它涵盖整个屏幕

答案 1 :(得分:0)

由于我想要呈现的这个视图在其他视图控制器中没有被重用,我通过向Storyboard视图控制器添加UIView并将hidden属性设置为YES来解决这个问题。按钮触发值并显示视图。

谢谢大家的提示!