在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
接上文,稍微底层一点的函数,我们对此进行简单的封装,以至于可以更加方便的使用。
代码
static GBMusicTrack *track;
static NSMutableDictionary *trackFiles; static BOOL enabled_=TRUE; static BOOL musicVolume_=1.0f; //
//把音频文件按着名字添加到字典中
//
+(void) addMusicTrack:(NSString*)filename name:(NSString*)name { if (trackFiles == nil) { trackFiles = [[NSMutableDictionary alloc] init]; } [trackFiles setObject:filename forKey:name]; } //
//通过判断字典中是否为空,看有没有音频文件。
//
+ (BOOL)hasMusicTrack:(NSString*)name { id obj = [trackFiles objectForKey:name]; if(obj==nil) return FALSE; else return TRUE; } // //对上文提及的方法进行封装,参数是播放的名字,和是否重复播放
//
+ (void)playMusicTrack:(NSString*)name withRepeat:(BOOL)b { #ifndef DEBUG_NO_SOUND if (!enabled_) return; if (trackFiles == nil) return; if(track!=nil) { @try { [self stopCurrentTrack]; } @catch (NSException* ex) { NSLog([ex description]); } } // // 这个函数initWithPath就是上文提及的,初始化方法。
//
track = [[GBMusicTrack alloc] initWithPath:[[NSBundle mainBundle] pathForResource:[trackFiles objectForKey:name] ofType:@"mp3"]]; [track setRepeat:b]; [track setVolume:musicVolume_]; // 音乐的播放
//
[track play]; #endif }
防盗加个链接: 作者:Alexliu(alex dotNet Learning)
|
请发表评论