¿Cuál es la diferencia entre los métodos addSubviewy insertSubViewcuando se agrega una vista mediante programación?
86
La única diferencia está en dónde se agrega la vista: si es la vista más al frente ( addSubview:), o está antes de la quinta subvista, ( insertSubview:atIndex:) o si está inmediatamente detrás de otra subvista ( insertSubview:aboveSubview:).
Utilizando 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 aquellas con índices más bajos.
No creo que haya diferencia.
addSubview:es un método simple y conveniente parafuente
1.addSubview agregar subvista en la matriz y luego agregar en View'slayer
- (void)addSubview:(UIView *)subview { [_subviews addObject:subview]; [_layer addSublayer:subview.layer]; }}
2.Mientras insertSubview agregue su vista como subvista y luego llame
[_layer insertSublayer:subview.layer atIndex:index];- (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index { [self addSubview:subview]; [_layer insertSublayer:subview.layer atIndex:index]; }fuente