Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在IOS下以Swift设置系统音量_Ios_Swift_Audio - Fatal编程技术网

在IOS下以Swift设置系统音量

在IOS下以Swift设置系统音量,ios,swift,audio,Ios,Swift,Audio,嗯 这得到了系统的音量,效果很好 var volume = AVAudioSession.sharedInstance().outputVolume print("output volume: \(volume)") 但是我如何设置系统音量[在Swift中]请首先您需要导入媒体播放器,如 import MediaPlayer 然后您可以设置系统音量,如下所示: let volumeView = MPVolumeView() if let view = volumeView.subviews.

这得到了系统的音量,效果很好

var volume = AVAudioSession.sharedInstance().outputVolume
print("output volume: \(volume)")

但是我如何设置系统音量[在Swift中]请

首先您需要导入媒体播放器,如

import MediaPlayer
然后您可以设置系统音量,如下所示:

let volumeView = MPVolumeView()
if let view = volumeView.subviews.first as? UISlider
{
     view.value = 0.1   // set b/w 0 t0 1.0       
}

希望这能对您有所帮助。

以下是您需要如何使用最新的iOS 10.2

步骤1。导入MediaPlayer

import MediaPlayer
第2步。添加扩展名

//Update system volume
extension MPVolumeView {
    static func setVolume(_ volume: Float) {
        let volumeView = MPVolumeView()
        let slider = volumeView.subviews.first(where: { $0 is UISlider }) as? UISlider

        DispatchQueue.main.asyncAfter(deadline: DispatchTime.now() + 0.01) {
            slider?.value = volume
        }
    }
}
第三步。这样改变音量

 //Update system volume
 MPVolumeView.setVolume(0.2)

多亏了

检查:看看这个线程,它似乎可以工作,但是AVAudioSession.sharedInstance().outputVolume仍然报告具有相同值的卷,所以这可能不是我想要的答案?如何隐藏卷hud?我尝试了view.ishiden=false和volumeView.ishiden,但运气不好……这非常有效。有人知道苹果对wrt AppReview的感觉吗?我见过很多这样的应用程序,它们都是通过AppReview实现的。也就是说,我肯定苹果不喜欢它,否则他们会给我们一个真正的API。至于隐藏它,我知道在过去,你可以通过将不透明度或alpha设置为0.01或类似的方式来隐藏它。最近没试过。为什么我们需要派车时间?你能告诉我吗?谢谢工作很好!