此问题与没有重复:
I'd like to hide the system volume HUD while adjusting the volume programmately without the need of a loaded View.
所以这个解决方案不是我想要的(在我的情况下这是 Not Acceptable ):
let volumeView = MPVolumeView(frame: .zero)
view.addSubview(volumeView)
我想要一个工作函数来隐藏volumeView,同时避免添加隐藏的Subview。
这是我到目前为止所得到的(但是目前这不起作用):
func hideHUD() {
let volumeWindow: UIWindow = UIWindow()
let volumeView = MPVolumeView(frame: .zero)
volumeView.isHidden = false
volumeWindow.isHidden = true
volumeWindow.addSubview(volumeView)
}
注意:我很确定可以通过编程方式隐藏音量 HUD,因为 VolumeBar API (you can find here) 能够隐藏 HUD 并替换有自己的风格!
Best Answer-推荐答案 strong>
您想要的似乎不可能。您链接的 VolumeBar 项目使用不可见的 MPVolumeView 来隐藏系统 HUD,就像其他人建议的那样。 See here
/// A standard iOS `MPVolumeView` that never appears but is necessary to hide the system volume HUD.
private let systemVolumeView: MPVolumeView
...
// Add a non-hidden MPVolumeView with a zero frame to prevent the system volume HUD from showing
systemVolumeView = MPVolumeView(frame: .zero)
systemVolumeView.isHidden = false
systemVolumeView.clipsToBounds = true
systemVolumeView.showsRouteButton = false
systemVolumeView.alpha = 0.0001
来源:https://github.com/gizmosachin/VolumeBar/blob/master/Sources/Internal/VolumeBarWindow.swift
关于ios - 隐藏音量 HUD(避免使用加载 View ),我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/49197570/
|