2010-03-25 3 views
0

Я пытаюсь воспроизвести звук на touchEnded, но у меня проблема. Есть несколько объектов, которые перемещаются вокруг, поэтому, если приведенный ниже код имеет значение true при перемещении любого объекта, он постоянно воспроизводит звук. Как я могу играть только один раз?TouchesEnded Sound?

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

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

     [self playsound]; 
    } 
} 

ответ

1

Если вы только хотите, чтобы играть в течение определенного объекта, который вызывает touchesEnded, в первую очередь необходимо определить, что объект, а затем вы можете просто сделать быстро, если-то заявление.

Если вы хотите, чтобы он воспроизводился один раз, просто дайте ему быструю переменную, например int playCount = 0;, а затем установите ее на playCount = 1; после того, как вы закончите играть и сделаете также инструкцию if-then (т.е. playCount - 0, не играйте, если playCount равен 1).