首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在xamarin iOS中使用AVPlayerViewController (AVKit)播放视频

如何在xamarin iOS中使用AVPlayerViewController (AVKit)播放视频
EN

Stack Overflow用户
提问于 2016-08-10 14:28:59
回答 2查看 4.4K关注 0票数 3

如何在xamarin iOS中使用AVPlayerLayer和AVPlayerViewControler播放视频?

代码语言:javascript
复制
playerItem = new AVPlayerItem(new NSUrl("https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"));
        player = new AVPlayer(playerItem);
        AVcontroller.Player = player;
        AVcontroller.View.Layer.Frame = this.View.Bounds;
        this.View.AddSubview(AVcontroller.View);
        //AVcontroller.SetFullscreen(true, true);
        AVcontroller.Player.Play();
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-25 14:40:24

代码语言:javascript
复制
AVPlayer avp;
AVPlayerViewController avpvc;


var url = NSUrl.FromString(yourURL);
            avp = new AVPlayer(url);
            avpvc = new AVPlayerViewController();
            avpvc.Player = avp;
            AddChildViewController(avpvc);
            View.AddSubview(avpvc.View);
            avpvc.View.Frame = View.Frame;
            avpvc.ShowsPlaybackControls = true;
            avp.Play();

这一切都是在viewDidLoad中完成的,现在它工作得很好。

票数 7
EN

Stack Overflow用户

发布于 2016-08-10 23:41:40

有两种播放视频的方法,选择其中一种,如代码所示:

代码语言:javascript
复制
 public override void ViewDidLoad ()
    {
        //Set the movie file path
        string moviePath = NSBundle.MainBundle.PathForResource ("loadingAnimation", "mov");
        NSUrl movieUrl = NSUrl.FromFilename (moviePath);

        //Using MPMoviePlayerController(using MediaPlayer)
        MPMoviePlayerController mpC = new MPMoviePlayerController (movieUrl);
        mpC.ControlStyle = MPMovieControlStyle.None;
        mpC.View.Frame = new CGRect (50, 50, 200, 200);
        mpC.View.BackgroundColor = UIColor.Clear;
        mpC.ShouldAutoplay = true;
        this.Add (mpC.View);
        mpC.Play ();

        //Using AVPlayer(using AVFoundation)
        AVPlayer avPlayer;
        AVPlayerLayer playerLayer;
        AVAsset asset;
        AVPlayerItem playerItem;
        asset = AVAsset.FromUrl (movieUrl);
        playerItem = new AVPlayerItem (asset);
        avPlayer = new AVPlayer (playerItem);
        playerLayer = AVPlayerLayer.FromPlayer (avPlayer);
        playerLayer.Frame = new CGRect (50, 300, 200, 200);
        View.Layer.AddSublayer (playerLayer);
        avPlayer.Play ();
    }

希望能对你有所帮助。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38865797

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档