我正在尝试让UISlider与音量摇杆同步。我已成功使用滑块来改变系统/铃声音量,但我需要滑块在摇杆移动时移动。有关如何获得当前音量值的任何建议?我使用下面的代码来监控音量变化:
- (void)volumeChanged:(NSNotification *)notification{
AVSystemController* avc = SharedAVSystemController;
// my sliders name is customVolume, and this is how I
// am trying to get the volume:
customVolume.value = [avc getVolume:(float *) forCategory:(id)];
}
另外,除了“铃声”之外,AVSystemController类别是什么?
答案 0 :(得分:2)
SDK中有一个类可以自行处理系统卷MPVolumeView。它不是UISlider
的子类,因此你不能改变它的外观(好吧,它自己很难将它们整合在一起)但这可能不是问题。 (编辑>查看class dumps,该视图包含正常UISlider
视图,因此可能比我预期的更容易)
我不确定它是否会处理您需要的所有内容以及它是否适合您的上下文,但您也可以查看它并尝试它。
答案 1 :(得分:0)
这将使用音量摇杆更新UISlider
:
- (void)volumeChanged:(NSNotification *)notification
{
AVSystemController *avs = [ notification object ];
NSString *audioDeviceName;
[ avs getActiveCategoryVolume:&_volume andName:&audioDeviceName ];
}