Recently I noticed this may not be such obvious, but if you need to know when user pauses video or resumes playback, just use:
- (void)playerView:(YTPlayerView *)playerView didChangeToState:(YTPlayerState)state;
and since there are constants like kYTPlayerStatePlaying or kYTPlayerStatePaused you can just do:
- (void)playerView:(YTPlayerView *)playerView didChangeToState:(YTPlayerState)state { switch (state) { case kYTPlayerStatePlaying: // do something here break; case kYTPlayerStatePaused: // do something else here break; default: break; } }
but to make it work, do not forget to set proper delegate:
myPlayer.delegate = self;
and add YTPlayerViewDelegate in your header file for view controller:
@interface ViewController : UIViewController <YTPlayerViewDelegate>
There are also few other useful methods:
- (void)playerViewDidBecomeReady:(YTPlayerView *)playerView; - (void)playerView:(YTPlayerView *)playerView didChangeToQuality:(YTPlaybackQuality)quality; - (void)playerView:(YTPlayerView *)playerView receivedError:(YTPlayerError)error;
so there is pretty easy to handle most of player behavior.