如何在其他视图中使用Swift中的AVPlayer暂停和播放音乐

时间:2019-01-11 12:38:02

标签: swift xcode avplayer tvos

我有2个视图。一个带有音乐列表和一个“音乐播放器视图”。我正在使用以下代码在“音乐播放器视图”中暂停和播放音乐。

我还想在音乐列表的第一个视图中暂停和播放音乐。但是,当我将以下代码添加到第一个视图并按“暂停/播放”按钮时,音乐会暂停,然后直接开始播放。

override func pressesEnded(_ presses: Set<UIPress>, with event: UIPressesEvent?) {
    presses.forEach { press in
        switch press.type {
        case .playPause:
            if player.isPlaying {
                player.pause()
            }
            else {
                player.play()
            }
        default: break
        }
    }

}

在两个视图中,我都希望音乐在播放时暂停播放,在不播放时播放。

1 个答案:

答案 0 :(得分:0)

无需像遍历所有印刷机那样循环,只需如下所示进行第一次触摸即可 `

override func pressesEnded(_ presses: Set<UIPress>, with event: UIPressesEvent?) {
 guard let press = presses.first else { return }
        switch press.type {
        case .playPause:
            if player.isPlaying {
                player.pause()
            }
            else {
                player.play()
            }
        default: break
        }
    }

}

但是对于第二个问题,您需要提供更多信息。