2016-12-24 39 views
0

我正在使用框架在Swift中播放Youtube視頻:https://github.com/gilesvangruisen/Swift-YouTube-Player。 該框架提供委託方法,但我似乎無法讓他們觸發。其他人已經得到它的工作,所以我敢肯定,問題是在我的最後。Swift Youtube Framework委託方法不會觸發

import UIKit 
import YouTubePlayer 

class MainPlayerController: UIViewController, YouTubePlayerDelegate { 

@IBOutlet var playerView: YouTubePlayerView! 

override func viewDidLoad() { 
    super.viewDidLoad() 
    let myVideoURL = NSURL(string: "https://www.youtube.com/watch?v=OGe-WXhbmBg") 
    playerView.delegate = self 
    playerView.loadVideoURL(myVideoURL! as URL) 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
} 

@IBAction func play(_ sender: AnyObject) { 
    playerView.play() 
} 


//The 3 functions below will not fire 

func playerStateChanged(videoPlayer: YouTubePlayerView, playerState: YouTubePlayerState) { 
    print("playerStateChanged") 
} 

func playerReady(videoPlayer: YouTubePlayerView) { 
    print("playerReady") 
} 

func playerQualityChanged(videoPlayer: YouTubePlayerView, playbackQuality: YouTubePlaybackQuality) { 
    print("playerQualityChanged") 
} 


} 

該播放器工作正常,將播放。我試圖讓playerReady()函數特別適用。任何幫助將是偉大的,謝謝。

+0

嘗試增加每個方法之前,一個下劃線的第一個參數。 即。 'playerReady(_ videoPlayer:...)' –

+0

哇,工作。謝謝!如果你不介意,下劃線代表什麼? –

+0

很高興我能幫忙:)你可以在這裏閱讀。 http://stackoverflow.com/a/24441023/2376786 –

回答

0

「嘗試每個方法之前添加下劃線的第一個參數,即playerReady(_錄像機:...)。」 -Viktor Gardart

相關問題