используйте кнопки управления событиями touchdown, touchupinside и touchupoutside:
UIButton *theButton = [[UIButton alloc]initWithFrame:CGRectMake(40.0, 40.0, 200.0, 30.0)];
[theButton setTitle:@"button" forState:UIControlStateNormal];
[theButton setBackgroundColor:[UIColor redColor]];
[theButton addTarget:self action:@selector(startMusic) forControlEvents:UIControlEventTouchDown];
[theButton addTarget:self action:@selector(stopMusic) forControlEvents:UIControlEventTouchUpInside];
[theButton addTarget:self action:@selector(stopMusic) forControlEvents:UIControlEventTouchUpOutside];
редактировать:
понял, что ваш вопрос, возможно, был больше о воспроизведении звуковых файлов?!
есть разные фреймворки, вы можете использовать AVAudioPlayer:
структура импорта и определение игрока
#import <AVFoundation/AVFoundation.h>
AVAudioPlayer *newPlayer;
создайте свои ibactions для кнопок в главном файле:
-(IBAction)startMusic{
NSString *soundFilePath = [[NSBundle mainBundle] pathForResource: @"mySoundFile"
ofType: @"wav"];
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: soundFilePath];
newPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL: fileURL error: nil];
newPlayer.numberOfLoops = -1; // Loop indefinately
[newPlayer play];
}
и
-(IBAction)stopMusic{
if(newPlayer isPlaying){
[newPlayer stop];
}
[newPlayer release];
}