【发布时间】:2018-06-23 10:08:47
【问题描述】:
我想使用音量增大/音量减小在我的应用程序中拍摄照片(编码在 Swift 3.2 中),就像 iOS 内置的相机应用程序一样。
有没有一种简单的方法可以做到这一点?如果它只是代码(不涉及故事板)会很棒
谢谢!
【问题讨论】:
我想使用音量增大/音量减小在我的应用程序中拍摄照片(编码在 Swift 3.2 中),就像 iOS 内置的相机应用程序一样。
有没有一种简单的方法可以做到这一点?如果它只是代码(不涉及故事板)会很棒
谢谢!
【问题讨论】:
目前没有直接可用的 API。但以下解决方法适用于您的情况。
AVAudioSession keypath outputVolume,当有新值时,您可以拍摄照片。import AVFoundation
var audioSession = AVAudioSession()
try audioSession.setActive(true)
audioSession.addObserver(self, forKeyPath: "outputVolume", options: NSKeyValueObservingOptions.new, context: nil)
func observeValueForKeyPath(keyPath: String, ofObject object: AnyObject, change: [NSObject : AnyObject], context: UnsafeMutablePointer<Void>) {
if keyPath == "outputVolume"{
// capture photo here.
}
}
【讨论】:
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?)