如何在其他子视图下方插入子视图

时间:2012-04-07 03:34:00

标签: ios subview addsubview

大家。

我有一些标签,我在xib文件中绘制它们,和 使用代码添加背景视图,但背景视图 在这些标签的前面,所以我无法看到它们。所以, 我的问题是如何在这些下方添加背景视图 标签

提前谢谢。

6 个答案:

答案 0 :(得分:63)

如果您是Google UIView,最终会收到文档 - UIView Class Reference

然后你需要向下看方法列表,直到找到一些听起来大致符合你需要的东西:

- (void)insertSubview:(UIView *)view atIndex:(NSInteger)index

- (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview

此时,您只需阅读方法行为的描述,并选择最适合您设计的方法。如果您在提出问题之前尝试自己找到答案,这对您自己的学习非常有益

答案 1 :(得分:42)

您可以使用方法insertSubview:atIndex:

[self.view insertSubview:backgroundView atIndex:0];

答案 2 :(得分:4)

您可以在Swift 3中调用此方法

view.insertSubview(yourSubView, at: 0)

view.sendSubview(toBack: yourSubView)

答案 3 :(得分:3)

在IB中,视图的子视图列在该视图下的层次结构中。显示在该层次结构中其兄弟姐妹上方的子视图将在渲染视图中显示在它们下方。因此,在下面的示例中,in 99:99 AM标签在运行时显示在Sign In按钮下。

如果您的背景只是一个UIImageView,请考虑将视图添加到NIB,然后在运行时设置其UIImage。这样,你就不会感到困惑。另外,what Paul.s said

enter image description here

答案 4 :(得分:1)

Swift 3及更高版本。

view.insertSubview(theViewYouWantToAdd, at: 0)

答案 5 :(得分:0)

https://medium.com/swift-programming/dynamic-layouts-in-swift-b56cf8049b08

使用VerticalLayout作为父级。这很简单而且有效