使用 MediaPlayer Framework 下的MPVolumeView类来实现对系统音量的控制,🐂吧。
Use a volume view to present the user with a slider control for setting the system audio output volume, and a button for choosing the audio output route. 这个是iOS官方API对MPVolumeView的解释。
MPVolumeView视图下有一个MPVolumeSlider类的子视图, MPVolumeSlider是一个UISlider的子类
mpVolumeViewParentView.backgroundColor = [UIColor clearColor];
MPVolumeView *myVolumeView =
[[MPVolumeView alloc] initWithFrame: mpVolumeViewParentView.bounds];
[mpVolumeViewParentView addSubview: myVolumeView];
[myVolumeView release];
MPVolumeSlider是一个私有类,在API 上是找不到具体的用法 ,好在他是UISlider的子类,我们就可以像下面一个去实现音量的间接控制。
UISlider *volumeSlider = nil;
for (UIView view in [myVolumeView subviews]){
if ([view isKindOfClass:[MPVolumeSlider class]){
volumeSlider = (UISlider)view;
break;
}
}
float systemVolume = volumeSlider.value;
//改变系统当前音量
[volumeSlider setValue:.8f animated:NO];
网友评论