2010-07-18 3 views
1

comment puis-je faire en sorte que toutes les sous-vues de ma vue ne sont pas animées ici et seulement la vue représentée de currentPage et la vue représentée de newPage?CATransition replaceSubView: avec ... est l'animation de tous les affichages

CATransition *transition = [CATransition animation]; 
    [transition setType:kCATransitionPush]; 
    [transition setSubtype:([self indexOfPage:currentPage] < [self indexOfPage:newPage]) ? kCATransitionFromRight : kCATransitionFromLeft]; 


    NSDictionary *ani = [NSDictionary dictionaryWithObject:transition 
                forKey:@"subviews"]; 
    [self setAnimations:ani]; 
    [self.animator replaceSubview:currentPage.representedView with:newPage.representedView]; 

Répondre

0

Tout d'abord, il semble étrange que vous demandez de ne pas animer subviews quand cela est la propriété exacte que vous avez créé votre animation pour donc je ne suis pas réelle clair sur ce que vous essayez de faire. Deuxièmement, le comportement par défaut pour l'animation pour animer la vue et toutes ses sous-vues. Si vous souhaitez uniquement animer la vue parente et les sous-vues spécifiques, vous ne devez pas ajouter les vues que vous ne voulez pas animer en tant qu'enfant, mais plutôt les rendre fratries avec l'ordre z approprié.

Questions connexes