Pregunta

-(void)CallingView2{

    SettingsViewController *aSettingsView = [[SettingsViewController alloc] initWithNibName:@"Settings" bundle:nil];

    [self setSettingsViewController:aSettingsView];
    [aSettingsView release];

    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:1.0];
    //setting the animation
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:window cache:YES];
    [self.window addSubview:[settingsViewController view]];
    **[[settingsViewController view] setBounds:CGRectMake(0, -30, 320, 480)];**

    [UIView commitAnimations];}

He puesto el código entre las estrellas en el código donde encomiendo mi animación y funciona, se mueve la vista como debe ser, pero ahora el problema es que cuando puedo rotar a la vista puedo ver cuando la vista está en movimiento abajo. ¿Es posible establecer límites para la vista antes de que se demuestre que el usuario no puede ver cuando está en movimiento 30px hacia abajo cada vez que vaya a las configuraciones

¿Fue útil?

Solución

Su problema es que se está configurando la vista límites dentro de un bloque de animación. El origen vista animará a partir de (0,0) a (0, -30) durante el tiempo que se tarda en realizar la transición flip.

Configuración de la vista de la geometría en viewDidLoad del controlador de vista sería un mejor enfoque.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top