Pregunta

¿Cuál es la diferencia entre los métodos addSubview y insertSubView cuando se añade una vista mediante programación?

¿Fue útil?

Solución

La única diferencia es en el que se añade la vista: si se trata de la vista del primer plano (addSubview:), o que es antes de la quinta subvista, (insertSubview:atIndex:) o si está inmediatamente detrás de otro subvista (insertSubview:aboveSubview:)

Otros consejos

El uso de insertSubView: puede especificar el índice, que determina el orden z de puntos de vista. Una vista con un mayor índice se encuentra por encima aquellos con los índices más bajos.

No creo que hay una diferencia. addSubview: es simple un método conveniente para

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

1.addSubview añadir subvista en matriz a continuación, añadir en View'slayer

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

}

2.While insertSubview añadir su opinión como subvista a continuación, llamar [_layer insertSublayer:subview.layer atIndex:index];

- (void)insertSubview:(UIView *)subview atIndex:(NSInteger)index
{
  [self addSubview:subview];
  [_layer insertSublayer:subview.layer atIndex:index];
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top