Domanda

Sto cercando di riprodurre un suono sul touchesEnded ma sto avendo un problema. Ci sono più oggetti che vengono spostati in giro, quindi se il codice qui sotto vale quando un oggetto viene spostato, gioca costantemente il suono. Come ho solo giocare una volta?

-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event{

    if(CGRectContainsRect([image1 frame], [image2 frame])){

        [self playsound];
    }
}
È stato utile?

Soluzione

Se si desidera solo per giocare per un certo oggetto che chiama touchesEnded, è necessario innanzitutto identificare l'oggetto e poi si può solo fare una dichiarazione rapido if-then.

Se si desidera solo per giocare una sola volta, poi basta dargli una variabile rapido come int playCount = 0; e quindi impostarlo su playCount = 1; dopo aver finito di giocare e fare una dichiarazione if-then su quello pure (cioè giocare se PlayCount è 0, non giocare se PlayCount è 1).

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top