Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在xamarin iOS中使用AVPlayerViewController(AVKit)播放视频_C#_Xamarin_Xamarin.ios_Xamarin.forms - Fatal编程技术网

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

C# 如何在xamarin iOS中使用AVPlayerViewController(AVKit)播放视频,c#,xamarin,xamarin.ios,xamarin.forms,C#,Xamarin,Xamarin.ios,Xamarin.forms,如何在xamarin iOS中使用AVPlayerLayer和AVPlayerViewController播放视频 playerItem = new AVPlayerItem(new NSUrl("https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4")); player = new AVPlayer(playerItem); AVcontroller.Player = player; AVcontr

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

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();

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

 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 ();
    }
希望它能帮助你

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中完成,现在工作正常。

感谢您的支持。但我想使用AVPlayerLayer和AVPlayerController。我不知道你的意思,我的答案中有一个AVPlayer示例,但很高兴知道你成功了。实际上,与AVPlayer和AVPlayerController没有什么不同,AVPlayerController只是一个包含AVPlayer的UIViewController。我尝试了使用AVPlayer,但没有工作。它的工作与AVPlayerController良好。谢谢你的帮助。上帝保佑你:)