gpt4 book ai didi

ios - 从后台返回时隐藏音量 HUD

转载 作者:行者123 更新时间:2023-11-28 07:48:14 26 4
gpt4 key购买 nike

[描述] 我在 StackOverflow 中找到了如何隐藏音量 HUD 的答案并尝试了一下。然后它在启动时起作用,但在从后台返回时不起作用。


希望检测到音量键按下,并执行一定的流程。因此,我想隐藏音量 HUD。

我搜索它并得到这些答案。

我在我的代码中试过了。 (我使用系统音量变化来检测音量按钮按下)

 private let audioSession: AVAudioSession = AVAudioSession.sharedInstance()
private var systemVolumeSlider: UISlider? = nil

override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)

let volumeView: MPVolumeView = MPVolumeView(frame: CGRect.zero)
if let volumeSlider: UISlider = volumeView.subviews.first as? UISlider {
self.systemVolumeSlider = volumeSlider
}
self.view.addSubview(volumeView)

do {
try self.audioSession.setActive(true)
} catch {
print("error: can not setActive")
}
self.audioSession.addObserver(
self, forKeyPath: "outputVolume", options: [.old, .new], context: nil
)
}

override func observeValue(
forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?
) {
// Process
}
}

它在应用程序启动时起作用。但是,从后台返回(从 sleep 或家中返回)时,它不起作用。

我应该怎么做才能在从后台返回时隐藏音量 HUD?

最佳答案

只需在您的应用委托(delegate)中添加此 self.window?.insertSubview(MPVolumeView(), at: 0)

不要忘记添加这个 import MediaPlayer

 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
self.window?.insertSubview(MPVolumeView(), at: 0)
return true
}

关于ios - 从后台返回时隐藏音量 HUD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50362946/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com