2

我正在为 Movie The ringer 编写一个小型音板应用程序,我是 iPhone SDK 的新手

我已经使用以下代码将所有按钮链接到他们的 Mp3 文件但是只有一些按钮播放他们的声音?

我检查了所有文件名,它们都与代码匹配:


- (IBAction)canWeBeAlone:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"Can We Be Alone", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);
}

- (IBAction)itsThreeAM:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"Its 3AM", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);
}

- (IBAction)iHaveSinned:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"I Have Sinned", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);
}

- (IBAction)mowMyLawn:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"Mow My Lawn", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);
}

- (IBAction)theyAreMyFriends:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"They Are My Friends", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);
}

- (IBAction)itsSteve:(id)sender {
    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"Its Not Jeffy Its Steve", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);
}

- (IBAction)itWasWrongOfMe:(id)sender {

    CFBundleRef mainBundle = CFBundleGetMainBundle();
    CFURLRef soundfileURLRef;
    soundfileURLRef = CFBundleCopyResourceURL(mainBundle, (CFStringRef) @"It Was Wrong of Me", CFSTR ("mp3"), NULL);
    UInt32 soundID;
    AudioServicesCreateSystemSoundID (soundfileURLRef, &soundID);
    AudioServicesPlaySystemSound(soundID);

}

任何帮助,将不胜感激

4

1 回答 1

0

我相信你应该使用 AVAudioPlayer 来播放 MP3 文件而不是 AudioServicesPlaySystemSound。AVAudioPlayer 支持“...同时播放多个声音,每个音频播放器一个声音,精确同步”。请参阅 AVAudioPlayer 类参考。这里还有一个项目链接,展示了如何使用 AVAudioPlayer:[http://www.techotopia.com/index.php/Playing_Audio_on_an_iPhone_using_AVAudioPlayer_(iOS_4)][1]

于 2013-02-13T17:42:44.420 回答