Pergunta

Eu gostaria de fazer um desbotamento dentro e fora de um UIImageView usando diferentes momentos, digamos, usando os seguintes parâmetros:

  • t = 0 ... alfa do UiImageView = 0
  • t = 0,5s ... alfa da UIImageView = 0,7
  • t = 0,7s ... alfa do UiImageView = 0

É possível ver com caanimação ou outro método? Como isso pode ser feito?

Obrigado por qualquer ajuda!

Foi útil?

Solução

Você provavelmente deve olhar para o Cakeyframeanimation. Ele permitirá que você defina valores para vários pontos de tempo.

Outras dicas

if (imgDefault.alpha == 0.0) {
    CGContextRef context = UIGraphicsGetCurrentContext();
        [UIView beginAnimations:nil context:context];
        [UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
        [UIView setAnimationDuration: 3.0];
        [UIView setAnimationDelegate: self];
        imgDefault.alpha = 1.0;
        [UIView commitAnimations];
}
else {
    CGContextRef context = UIGraphicsGetCurrentContext();
        [UIView beginAnimations:nil context:context];
        [UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
        [UIView setAnimationDuration: 3.0];
        [UIView setAnimationDelegate: self];
        imgDefault.alpha = 0.0;
        [UIView commitAnimations];
}

espero que ajude

O UIView possui um setanimationDidStoPselector: método que você pode usar. Basta configurar seu desbotamento em animação usando um bloco de iniciações e definir o seletor Didstop como outro método que contém apenas o bloco de animação Fade out. Cada um desses blocos de animação pode ter diferentes durações de animação.

Algo assim:

    [UIView beginAnimations:next context:context];
    [UIView setAnimationDuration:0.5];
    [UIView setAnimationDelegate:self];
    [UIView setAnimationDidStopSelector:@selector(fadeOut:finished:context:)];
    myView.alpha = 0.7;
    [UIView commitAnimations];

-(void)fadeOut:(NSString*)animationID finished:(BOOL)finished context:(void*)context  {
    [UIView beginAnimations:nil context:context];
    [UIView setAnimationDuration:0.2];
    myView.alpha = 0.0;
    [UIView commitAnimations];
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top