iOS 调节系统音量
程序员文章站
2022-05-12 09:18:20
...
控制系统音量总得来说有如下两种方法
- 第一种方法是苹果在7.0以后建议用的,不过通过第一种方法,调节系统音量会弹出系统音量提示框和系统音量滑动条,但是有些需求是不需要显示这些的,我们可以通过如下方法,设置frame和showsRouteButton属性,两者缺一不可。
- 如果想单纯的控制音量,则不推荐使用第二种方法。
//这个默认值是YES,为了突出我又刻意设置了一遍,设为NO之后,系统音量条是隐藏了,可是会弹出音量提示框
_volumeView.showsVolumeSlider = YES;
//通过设置frame来达到隐藏音量滑动条
[_volumeView setFrame:CGRectMake(-1000, -1000, 10, 10)];
//去掉提示框
_volumeView.showsRouteButton = NO;
- 通过MPVolumeView来控制系统音量的方法
-(void)controlVolume{
_volumeView = [[MPVolumeView alloc]init];
_volumeView.showsRouteButton = NO;
//默认YES,这里为了突出,故意设置一遍
_volumeView.showsVolumeSlider = YES;
[_volumeView sizeToFit];
[_volumeView setFrame:CGRectMake(-1000, -1000, 10, 10)];
[self addSubview:_volumeView];
[_volumeView userActivity];
for (UIView *view in [_volumeView subviews]){
if ([[view.class description] isEqualToString:@"MPVolumeSlider"]){
_volumeSlider = (UISlider*)view;
break;
}
}
//设置默认打开视频时声音为0.3,如果不设置的话,获取的当前声音始终是0
[_volumeSlider setValue:0.2];
//获取最是刚打开时的音量值
_volumeValue = _volumeSlider.value;
//设置展示音量条的值
_showVolueSlider.value = _volumeValue;
}
- 下面这种方法大家就不要试了,在7.0以后苹果反对使用此方法,建议用MPVolumeView类。
MPMusicPlayerController *mpc = [MPMusicPlayerController applicationMusicPlayer];
//This property is deprecated -- use MPVolumeView for volume control instead.
//在7.0以后苹果反对使用此方法,建议用MPVolumeView
mpc.volume = 0; //0.0~1.0