2010-01-17 5 views
0

J'essaie de faire jouer un bouton en appuyant sur le bouton. Je peux obtenir le son pour jouer avec l'option Touch Up Inside mais ce n'est pas ce que je cherche car le son ne joue qu'après que le bouton soit relâché.iPhone - Comment jouer un son sur un bouton tactile?

J'ai essayé d'utiliser les touchesBegan pour jouer le son en touchant le bouton mais cela ne semble pas fonctionner. Des idées pourquoi?

Merci

Mon code:

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    UITouch *touch = [[event allTouches] anyObject]; 
[super touchesBegan:touches withEvent:event]; 
    if([touch view] == doneButton) { 


NSString *path = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"caf"]; 
AVAudioPlayer* clickAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 

clickAudio.delegate=self; 
[clickAudio play]; 

    } 

}

+0

êtes-vous en train de faire comme une application de piano? et quand l'utilisateur le retient, le son continue à jouer –

+0

vous savez, vous pouvez utiliser un UIButton, et faire autre chose que de retoucher à l'intérieur, peut-être, comme 'Touch Down' –

+0

Touch Down fonctionne mais je ne veux pas le bouton pour déclencher mon modalview jusqu'à ce que le bouton soit levé. Non, je ne fais pas une application de piano, lol ... Trop de ceux là-bas. C'est juste pour ma préférence. – 0SX

Répondre

1

Utilisez un UIButton. Appelez le -play lorsque vous appuierez et appelez le -stop lors de la retouche.

Questions connexes