最近在开发幻灯片的需求,首先确认项目里已经加入AudioToolbox.framework。
在此放上背景音乐播放的代码,添加淡入淡出效果,重温一下计时器的知识点。
头文件 QZSoundBoard.h 内容如下
#import <Foundation/Foundation.h>
#import <AVFoundation/AVFoundation.h>
@interface QZSoundBoard : NSObject
+ (void)addSoundAtPath:(NSString *)filePath forKey:(id)key;
+ (void)playSoundForKey:(id)key;
+ (void)addAudioAtPath:(NSString *)filePath forKey:(id)key;
+ (void)playAudioForKey:(id)key fadeInInterval:(NSTimeInterval)fadeInInterval;
+ (void)playAudioForKey:(id)key;
+ (void)stopAudioForKey:(id)key fadeOutInterval:(NSTimeInterval)fadeOutInterval;
+ (void)stopAudioForKey:(id)key;
+ (void)pauseAudioForKey:(id)key fadeOutInterval:(NSTimeInterval)fadeOutInterval;
+ (void)pauseAudioForKey:(id)key;
+ (AVAudioPlayer *)audioPlayerForKey:(id)key;
@end
QZSoundBoard.m 内容如下
#import "QZSoundBoard.h"
#import <AudioToolbox/AudioToolbox.h>
#define QZSOUNDBOARD_AUDIO_FADE_STEPS 30
@implementation QZSoundBoard {
NSMutableDictionary *_sounds;
NSMutable