在MonoTouch中播放视频

接着上一个随笔。视频播放。

在IOS上,视频播放使用类MPMoviePlayerController进行,由于苹果公司已经封装良好,使用很简单。

引入命名空间

using MonoTouch.MediaPlayer;

实现代码

MPMoviePlayerController player;

player=new MPMoviePlayerController(NSUrl.FromFilename("aaa.m4v"));

player.View.Frame= this.imgAnimation.Frame; 
this.View.AddSubview(player.View);
player.Play();  

MPMoviePlayerController不仅可以播放本地视频文件,还可以播放网络文件

MPMoviePlayerController player;

player=new MPMoviePlayerController(NSUrl.FromString("http://www.website.com/aaa.m4v"));

至此视频可以播放了。

但在实际应用中,这是不够的。MPMoviePlayerController 没给我们提供事件可以,我们怎么能知道视频已经播放完成了呢?这时要用到消息中心了。   

NSNotificationCenter

具体实现

var center= NSNotificationCenter.DefaultCenter;
var playbackFinished= new NSString( "MPMoviePlayerPlaybackDidFinishNotification");
center.AddObserver(playbackFinished,
    (notity)=>{     
       /*写入视频播放完成后要做的事*/
    });

在注册消息这点上,一点都不人性化,需要手工输入。

还需要其它消息,具体的消息名称,要到苹果的帮助文档中查一查。  

希望对大家有帮助  

欢迎到我的网站看看
原文地址:https://www.cnblogs.com/Caiyinsoft/p/2153183.html