PNG sequência de imagens tocando problema

votos
0

Ok, eu tenho um botão que, quando pressionado, deve animar / jogar uma sequência de imagens PNG.

Meu problema é -

  • I pressionar o botão (botão A) e a sequência de imagens desempenha - o que é bom!
  • mas então eu pressione (botão A) novamente e nada acontece. - mau.
  • mas depois ... se eu pressionar (botão A) uma terceira vez - a sequência de imagens joga.

Então, basicamente, a sequência de imagens só joga cada segunda vez que pressionar o botão ? ... Eu não posso pensar que poderia estar causando isso?

Outro cenário que pode lhe dar pistas para o problema -

  • I pressionar o botão (botão A) e tudo funciona bem
  • Eu pressionar um botão diferente ( botão B ) e faz sua coisa diferente
  • Então eu pressione (botão A) novamente e tudo funciona bem.

Assim, ao que parece, a sequência de imagens só joga se algo mais acontece entre prensas (botão A)?

Alguma ideia?

Aqui está o código ... As opiniões viewDidLoad tem [auto loadAnimX01];

    - (void) loadAnimX01 {

    x01 = [[UIImageView alloc] initWithFrame:CGRectMake(35.0f, 112.0f,70.0f, 115.0f)];
    NSMutableArray *array = [NSMutableArray array];
    for (int i = 1; i <= 15; i++) 
        [array addObject:[UIImage imageNamed:[NSString stringWithFormat:@pipe01_%02d.png,i]]];
    x01.animationImages = array;
    x01.animationDuration = 0.7;
    x01.animationRepeatCount = 1;
    [self.view addSubview:x01];
    [x01 release];
}

- (IBAction)pX01 {
    [x01 startAnimating];
}

Obrigado!

Publicado 27/08/2009 em 07:14
fonte usuário
Em outras línguas...                            


1 respostas

votos
1

Bem, eu descobri uma solução. Mas eu ainda não consigo fazer o sentido dele !?

  • Eu tenho que verificar para ver se a sequência estiver jogando
  • Em seguida, parar a sequência
  • Em seguida, jogá-lo.

Isso faz com que a seqüência a imagem jogar cada vez que pressionar o botão

Se alguém pudesse me dizer porque meu eu tenho que fazer isso ... por favor me avise

Aqui está a minha solução

- (IBAction)pX01{
if ([x01 isAnimating]) { 
    [x01 stopAnimating];
}
[x01 startAnimating];

}

Obrigado!

Respondeu 28/08/2009 em 02:02
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more