UIView类中addSubview和insertSubview的区别

以编程方式添加视图时,addSubview和insertSubView方法有什么区别?

谢谢

Ashwani

唯一的区别是添加视图的位置:无论是最前面的视图( addSubview: insertSubview:atIndex: ,还是位于第5 insertSubview:atIndex:视图之前( insertSubview:atIndex:或者是立即位于另一个子视图之后( insertSubview:aboveSubview:

使用insertSubView:你可以指定索引,它决定视图的z顺序。 指数走高的指标高于指数走低的指数。

我不认为有什么区别。 addSubview:简单方便的一种方法

 [view insertSubview:aView atIndex:[view.subviews count]] 

1.addSubview在数组中添加子视图,然后添加到View'slayer中

 - (void)addSubview:(UIView *)subview { [_subviews addObject:subview]; [_layer addSublayer:subview.layer]; } 

}

2.在insertSubview中添加你的视图作为子视图,然后调用[_layer insertSublayer:subview.layer atIndex:index];

 - (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index { [self addSubview:subview]; [_layer insertSublayer:subview.layer atIndex:index]; }