Recently I noticed this may not be such obvious, but if you need to know when user pauses video or resumes playback, just use:
1 |
- (void)playerView:(YTPlayerView *)playerView didChangeToState:(YTPlayerState)state; |
and since there are constants like kYTPlayerStatePlaying or kYTPlayerStatePaused you can just do:
1 2 3 4 5 6 7 8 9 10 11 12 |
- (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:
1 |
myPlayer.delegate = self; |
and add YTPlayerViewDelegate in your header file for view controller:
1 |
@interface ViewController : UIViewController <YTPlayerViewDelegate> |
There are also few other useful methods:
1 2 3 |
- (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.