簡體   English   中英

從 AVPlayerViewController 中刪除 QuickTime 圖標

[英]Removing the QuickTime icon from AVPlayerViewController

我正在構建一個屏幕,用戶可以在其中使用 AVPlayerViewController 播放音頻文件。 問題是我無法擺脫播放器視圖中的 QuickTime 標志,請看截圖:

在此處輸入圖片說明

我的代碼:

do {
    try AVAudioSession.sharedInstance().setCategory(AVAudioSessionCategoryPlayback)
    try AVAudioSession.sharedInstance().setActive(true)
    guard let url = URL(string: filePath!) else {
        return
    }

    let player = AVPlayer(url: url)
    let controller = AVPlayerViewController()
    controller.modalPresentationStyle = .overFullScreen
    controller.player = player

    self.present(controller, animated: true) {
        player.play()
    }
} catch {
}

我試過使用controller.contentOverlayView?.addSubView()添加 UIImageView ,但我無法正確居中。 如何自定義播放器的布局而不必從頭開始構建自己的界面?

您嘗試的是正確的:只需將子視圖添加到內容疊加視圖即可。 但是您省略了一步:您必須同時給出子視圖和內容疊加視圖約束 ,以使它們完全覆蓋播放器控制器的視圖。

示例(我的av是您的controller ):

            let iv = UIView()
            iv.backgroundColor = .white
            av.contentOverlayView!.addSubview(iv)
            let v = av.contentOverlayView!
            iv.translatesAutoresizingMaskIntoConstraints = false
            NSLayoutConstraint.activate([
                iv.bottomAnchor.constraint(equalTo:v.bottomAnchor),
                iv.topAnchor.constraint(equalTo:v.topAnchor),
                iv.leadingAnchor.constraint(equalTo:v.leadingAnchor),
                iv.trailingAnchor.constraint(equalTo:v.trailingAnchor),
            ])
            NSLayoutConstraint.activate([
                v.bottomAnchor.constraint(equalTo:av.view.bottomAnchor),
                v.topAnchor.constraint(equalTo:av.view.topAnchor),
                v.leadingAnchor.constraint(equalTo:av.view.leadingAnchor),
                v.trailingAnchor.constraint(equalTo:av.view.trailingAnchor),
            ])

如果您只想刪除“Q”標志而不用任何東西替換它,您可以通過這種方式擺脫:

(avPlayerViewController?.view.subviews.first?.subviews.first as? UIImageView)?.image = nil

但是,至少對我來說,“Q”標志通常只在我設置播放器視圖控制器后大約 2 秒出現。 因此,您可能需要使用計時器使上述代碼在創建播放器后運行約 2 秒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM