J'ai un Cependant, lorsque je déchaîne le Je veux être capable de fader la vision de ScrollView et de tout ce qu'il contient en même temps dans la même animation - c'est-à-dire ne révélant aucune des images partiellement couvertes. P> Si ce n'est pas possible , Je peux toujours ajouter un J'ai essayé ceci: p> et j'ai essayé ceci: p> uiscrollview code> qui contient diverses sous-visions ( uiimageviews code>, uilabels code> et standard uIViews code>). Certaines des uiimageviews code> sont partiellement couvertes par d'autres uIViews code>. Uiscrollview code>, les parties partiellement couvertes du uiImageviews code> sont exposées pour le bref moment de l'animation. P> uiview code> sur tous les autres commandes et la fondue de l'alpha 0 jusqu'à 1 pour tout cacher, mais je suis sûr qu'il y a un moyen d'effectuer une fade complète sur une vue et Toutes ses sous-espages. P> - (IBAction)questionGroupChanged:(UIButton*)sender {
[UIView beginAnimations:nil context:NULL];
[self fadeViewHierarchy:scrollViewResults toAlpha:0.0f];
[UIView commitAnimations];
}
- (void)fadeViewHierarchy:(UIView*)parentView toAlpha:(float)alpha {
[parentView setAlpha:alpha];
for (UIView *subView in parentView.subviews) {
[self fadeViewHierarchy:subView toAlpha:alpha];
}
}
3 Réponses :
Avez-vous essayé avec UIView Classe Méthodes + AnimateWithDuration: * (disponible sur iOS 4 et +)
J'aime: p>
- (void)fadeAllViews
{
[UIView animateWithDuration:2
animations:^{
for (UIView *view in allViewsToFade)
view.alpha = 0.0;
}
completion:^(BOOL finished){}
];
}
Cela se produit à cause de la façon dont le compositeur fonctionne. Vous devez activer la rasâtre sur la couche de la vue lors de la décoloration in / une sortie:
view.layer.shouldRasterize = YES;
N'oubliez pas non plus de définir l'échelle appropriée, sinon vos amateurs de rasterized auront l'air de Shitty sur des écrans de rétine. Voir.Layer.RasterizationCale = [UISCREEN Mainscreen] .cale;
La réponse de Mike est la bonne et il mérite tout crédit pour cela. Juste pour illustrer, il pourrait ressembler à: Ainsi, en utilisant votre ScrollViewresults code>, il serait appelé comme suit: P> [self fadeView:scrollViewResults toAlpha:0.0f];
Merci pour l'illustration @rob