2009-10-05 5 views

Répondre

97

La seule différence est où la vue est ajoutée: que ce soit la vue en avant (addSubview:), ou il est avant le 5 sous-vue, (insertSubview:atIndex:) ou si elle est immédiatement derrière une autre sous-vue (insertSubview:aboveSubview:).

42

En utilisant insertSubView:, vous pouvez spécifier l'index, qui détermine l'ordre z des vues. Une vue avec un indice plus élevé se situe au-dessus de celles avec des indices inférieurs.

+0

Merci, Je voulais y at-il une différence spécifique dans l'utilisation de ces deux fonctions –

+1

Mis à part la différence spécifique que j'ai décrite dans ma réponse, il n'y en a pas . –

29

Je ne pense pas qu'il y ait une différence. addSubview: est simple une méthode pratique pour

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

1.addSubview ajouter dans le tableau sous-vue puis ajouter dans View'slayer

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

}

2.Tout insertSubview ajouter votre point de vue sous-vue puis appelez [_layer insertSublayer:subview.layer atIndex:index];

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