Pergunta

Eu tenho um código que precisa ser executado dentro dos colchetes de animação UIView, mas quero que ele seja isento de animação, então todo o código em cada lado dele é animado, mas não é.Existe uma maneira de fazer isso?

Foi útil?

Solução

Não há código que você pode simplesmente inserir em um bloco de animação UIView para excluí-lo da animação, mas você pode aninhar blocos de animação e conclusão UIView para cadeias de animação arbitrariamente complicadas:

[UIView animateWithDuration:0.3f animations:^ {
    // Animation Code.
} completion: ^ (BOOL finished) {
    // Non-animated code, executed after first animation block...
    // Blah;
    // [Blah blah];
    [UIView animateWithDuration:0.3f animations:^ {
        // More animation code.
    }];
}];

Outras dicas

Este parece ser o caminho:

[UIView performWithoutAnimation:^{
    view.frame = CGRectMake(...);
}];
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top