播放音效Xcode 5

时间:2014-06-14 22:39:09

标签: cocoa-touch

我想每次点击图片时都会发出声音。 添加"链接的框架和库" AudioToolbox 在GameViewController.h 添加:

#import <AudioToolbox/AudioToolbox.h>
@interface GameViewController : UIViewController
{
SystemSoundID PlaySoundID;
}
- (IBAction)PlayAudioButton:(id)sender;

(用按钮连接)。

在GameViewController.m上 加上这个:

- (void)viewDidLoad
{

NSURL *SoundURL = [NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:@"Sound"    ofType:@"wav"]];
AudioServicesCreateSystemSoundID((__bridge CFURLRef)SoundURL, &PlaySoundID);
}

- (IBAction)PlayAudioButton:(id)sender {

AudioServicesPlaySystemSound(PlaySoundID);

}

毕竟没有工作没有错误,但声音没有工作...... 有什么问题?

感谢。

2 个答案:

答案 0 :(得分:1)

不确定我是否正确理解了您的问题,但这是我点击按钮时可以播放自定义声音的方式

确保

#import <AVFoundation/AVFoundation.h>
你的.h或.m文件中的

为您的类创建一个AVAudioPlayer * audioPlayer属性(以.h或.m为单位),然后执行以下操作:

-(void)viewDidLoad{
    [super viewDidLoad]
    NSError *error;
    NSString *soundPath =[[NSBundle mainBundle] pathForResource:@"Sound" ofType:@"wav"];
    NSURL *soundURL = [NSURL fileURLWithPath:soundPath];
    AVAudioPlayer *theAudioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundURL error:&error];
    [theAudioPlayer prepareToPlay];
    self.audioPlayer = theAudioPlayer;
}

- (IBAction)PlayAudioButton:(id)sender{
    [self.audioPlayer play];
}

答案 1 :(得分:0)

请改用:

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle]
                                          pathForResource:@"yourSound"
                                          ofType:@"mp3"]];

AVAudioPlayer sound = [[AVAudioPlayer alloc]
                    initWithContentsOfURL:url
                    error:nil];

[sound play];