iphone - Diferencia entre addSubview e insertSubview en la clase UIView
(4)
¿Cuál es la diferencia entre los métodos addSubview e insertSubView cuando una vista se agrega programáticamente?
1.addSubview añade una subvista en un array y luego agrega View''slayer
- (void)addSubview:(UIView *)subview
{
[_subviews addObject:subview];
[_layer addSublayer:subview.layer];
}
}
2. Mientras insertSubview agrega su vista como subvista, llame a [_layer insertSublayer:subview.layer atIndex:index];
- (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index
{
[self addSubview:subview];
[_layer insertSublayer:subview.layer atIndex:index];
}
La única diferencia radica en dónde se agrega la vista: si es la vista más insertSubview:atIndex: ( insertSubview:atIndex: , o está antes de la 5ta subvista, ( insertSubview:atIndex: o si está inmediatamente detrás de otra subvista ( insertSubview:aboveSubview: .
No creo que haya una diferencia. addSubview: es un método simple y conveniente para
[view insertSubview:aView atIndex:[view.subviews count]]
Usando insertSubView: puede especificar el índice, que determina el orden z de las vistas. Una vista con un índice más alto se encuentra por encima de aquellos con índices más bajos.