Tengo UIScrollView que contiene varias subvistas (UIImageViews, UILabels y UIViews estándar). Algunas UIImageViews están parcialmente cubiertas por otras UIViews.Fading UIView permite ver las subvistas
Sin embargo, cuando desaparezco UIScrollView, las partes parcialmente cubiertas de UIImageViews se exponen durante el breve momento de la animación.
Quiero ser capaz de atenuar la vista de desplazamiento y todo su contenido al mismo tiempo en la misma animación, es decir, no revelar ninguna de las imágenes parcialmente cubiertas.
Si no es posible, siempre puedo agregar una UIView sobre todos los demás controles y desvanecerla de alfa 0 a 1 para ocultar todo, pero estoy seguro de que hay una forma de realizar un fundido completo en una vista y todas sus subvistas.
yo probamos este:
[UIView beginAnimations:nil context:NULL];
[scrollViewResults setAlpha:0.0f];
[UIView commitAnimations];
y he intentado esto:
- (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];
}
}
Pero todavía no conseguido descifrar él. ¿Algunas ideas?
Además, no se olvide de establecer la escala adecuada, o sus desvanecimientos rasterizados se verán mal en las pantallas retina. view.layer.rasterizationScale = [UIScreen mainScreen] .scale; – dizy