如何在其他子视图下面插入一个子视图?

39

大家好。

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

提前感谢你。

6个回答

64

如果你谷歌UIView,你会看到文档 - UIView类参考手册

然后你需要浏览方法列表,找到一些听起来大概符合你需求的方法,比如这两个:

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

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

在这个时候,你只需要阅读方法行为的描述,并选择最容易实现你设计的那个。尝试自己找到答案再提问,对你的学习非常有益。


1
谢谢!我会先去谷歌搜索并找到答案。你的建议很有帮助。 - jxdwinter
4
一旦您习惯于查看文档,就会发现答案变得更容易获得 - 只是很难知道从哪里开始阅读。 - Paul.s

44

6

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

view.insertSubview(yourSubView, at: 0)

或者

view.sendSubview(toBack: yourSubView)

3

Swift 3及以上版本。

view.insertSubview(theViewYouWantToAdd, at: 0)

2
在IB中,视图的子视图在该视图下层次结构中列出。在该层次结构中出现在其兄弟视图之上的子视图将在呈现的视图中出现在它们之下。因此,在下面的示例中,in 99:99 AM标签在运行时显示在Sign In按钮下方。
如果您的背景只是一个UIImageView,请考虑将视图添加到您的NIB中,然后在运行时设置其UIImage。这样,您就不会感到困惑。另外,参考Paul.s所说的内容enter image description here

2
OP 正在谈论如何在 xib 之外的代码中添加视图。 - Paul.s

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接