Différence entre addSubview et insertSubview en classe UIView
-
19-09-2019 - |
Question
Quelle est la différence entre les méthodes de addSubview
et insertSubView
lorsqu'une vue est ajoutée par programme?
La solution
La seule différence est où la vue est ajoutée: que ce soit la vue en avant (de addSubview:
), ou il est avant le 5 sous-vue, (insertSubview:atIndex:
) ou si elle est juste derrière une autre sous-vue (insertSubview:aboveSubview:
)
Autres conseils
Utilisation insertSubView:
vous pouvez spécifier l'index, qui détermine l'ordre z de vues. Un point de vue avec un indice plus élevé se situe au-dessus de ceux qui ont des indices inférieurs.
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]]
1.addSubview ajouter sous-vue dans le tableau, 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];
}