1

在我的程序中有一个MainView,并且在程序中用户可以添加一些subView. 为了处理它们,我想知道subView现在哪些显示在顶层。

subView注意:除非用户想要,否则我不会删除s。并且subviews 的大小不同,可能有重叠或没有重叠。

4

2 回答 2

1

子视图

接收者的直接子视图。(只读)

@property(nonatomic, readonly, copy) NSArray *subviews

您可以使用此属性来检索与您的自定义视图层次结构关联的子视图。数组中子视图的顺序反映了它们在屏幕上的可见顺序,索引 0 处的视图是最后面的视图。

来自UIView 类参考

于 2012-07-18T12:23:07.070 回答
0

UIView声明一个包含其子视图的属性:

@property(nonatomic, readonly, copy) NSArray *subviews

当您添加子视图时,它们会添加到该数组中。具有最高索引的子视图显示在顶部。

UIView中有许多方法可用于操作子视图,而无需直接使用数组:

– addSubview:
– bringSubviewToFront:
– sendSubviewToBack:
– removeFromSuperview
– insertSubview:atIndex:
– insertSubview:aboveSubview:
– insertSubview:belowSubview:
– exchangeSubviewAtIndex:withSubviewAtIndex:
– isDescendantOfView:
于 2012-07-18T12:25:53.263 回答