2009-10-05 9 views

Respuesta

97

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 es inmediatamente detrás de otra subvista (insertSubview:aboveSubview:).

42

Al usar 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.

+0

Gracias, Quería que exista una diferencia específica en el uso de estas dos funciones –

+1

Además de la diferencia específica que describí en mi respuesta, no hay ninguna . –

29

No creo que haya una diferencia. addSubview: es sencilla un método conveniente para

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

1.addSubview añadir subvista en orden 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 luego llamar [_layer insertSublayer:subview.layer atIndex:index];

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