【问题标题】:Play the events of YouTube player播放 YouTube 播放器的事件
【发布时间】:2015-09-25 14:27:26
【问题描述】:

我使用 Xcode Swift 7 和 2。 我想知道如何收听 YouTube 播放器事件。我正在使用 YouTube API。我想更准确地知道我的播放器何时完成加载。

【问题讨论】:

  • 使用YTPlayerViewdidChangeToState委托并检查kYTPlayerStatePlayingkYTPlayerStatePaused值。
  • 能不能给我举个例子,因为我试过了,但是不行……
  • 抱歉,不,我目前没有使用它来运行测试的项目,我只记得它应该工作的方式并对此进行了快速评论。
  • 好的,谢谢! ;)
  • @hugo_082:GitHub 上有一个示例项目。这是设置和使用委托的相关代码:Link

标签: ios swift youtube-api


【解决方案1】:

我正在使用 Swift 2.1、Xcode 7.1 和 Youtube API v3。

我发现这个教程很有帮助:https://developers.google.com/youtube/v3/guides/ios_youtube_helper

如果您使用的是 cocoapods,它应该会更容易,但我只是手动复制了 .h.m 并创建了一个 Bridging-Header。

设置委托非常简单。首先,您必须告诉您的 VC 遵守 YTPlayerViewDelegate,如下所示:

然后为您的YTPlayerView 创建一个出口并在您的viewDidLoad 中调用[playerViewNameHere].delegate = self

你可以像这样实现didChangeToSate

// MARK: YTPlayerDelegate methods

func playerView(playerView: YTPlayerView!, didChangeToState state: YTPlayerState) {
    switch(state) {
    case YTPlayerState.Unstarted:
        print("Unstarted")
        break
    case YTPlayerState.Queued:
        print("Ready to play")
        break
    case YTPlayerState.Playing:
        print("Video playing")
        break
    case YTPlayerState.Paused:
        print("Video paused")
        break
    default:
        break
    }

} 

不过,我只会在全屏视图打开时收到播放和暂停通知。

希望这会有所帮助!

【讨论】:

  • 嗨!您找到如何获取UnstartedQueued 通知了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-11-21
  • 2015-02-16
  • 2012-06-03
  • 1970-01-01
  • 2014-09-27
  • 2012-04-02
  • 2013-02-08
相关资源
最近更新 更多