zoukankan      html  css  js  c++  java
  • IOS视频播放器的制作

    利用自带MPMoviePlayerController来实现视频播放,首先要在项目中导入MediaPlayer.Framework框架包。

    在视图控制器中
    #import "MediaPlayer/MPMoviePlayerController.h"
     
    .m文件中,加入一下代码

    - (void)viewDidLoad

    {

        [super viewDidLoad];

        self.navigationController.navigationBar.hidden=YES;

        //geomancy.jpg

        UIImageView * nanshanImage=[[UIImageView alloc]initWithFrame:CGRectMake(0,0,1024,699)];

        nanshanImage.image=[UIImage imageNamed:@"geomancy.jpg"];

        [self.view addSubview:nanshanImage];

        [nanshanImage release];

        //播放视频按钮

        UIButton* playButton= [[UIButton alloc]initWithFrame:CGRectMake(1452507080)];

        [playButton addTarget:self action:@selector(PlayMovieAction:) forControlEvents:UIControlEventTouchUpInside];

         playButton.backgroundColor=[UIColor redColor];

        [self.view addSubview:playButton];

        [playButton release];

        

    }

    -(void)PlayMovieAction:(id)sender{

       // NSLog(@"PlayMovieAction====");

        //视频文件路径,此视频已经存入项目包中。属于本地播放

        NSString *path = [[NSBundle mainBundle] pathForResource:@"jinxiuMovie" ofType:@"mp4"];

        //视频URL

        NSURL *url = [NSURL fileURLWithPath:path];

        //视频播放对象

        MPMoviePlayerController *movie = [[MPMoviePlayerController alloc] initWithContentURL:url];

        movie.controlStyle = MPMovieControlStyleFullscreen;

        [movie.view setFrame:self.view.bounds];

         movie.initialPlaybackTime = -1;

        [self.view addSubview:movie.view];

        // 注册一个播放结束的通知,当播放结束时,监听到并且做一些处理

    //播放器自带有播放结束的通知,在此仅仅只需要注册观察者监听通知即可。

        [[NSNotificationCenter defaultCenter] addObserver:self

                                                 selector:@selector(myMovieFinishedCallback:)

                                                     name:MPMoviePlayerPlaybackDidFinishNotification

                                                   object:movie];

        [movie play];

    }

    -(void)myMovieFinishedCallback:(NSNotification*)notify

    {

        //视频播放对象

        MPMoviePlayerController* theMovie = [notify object];

        //销毁播放通知

        [[NSNotificationCenter defaultCenter] removeObserver:self

                                                        name:MPMoviePlayerPlaybackDidFinishNotification

                                                      object:theMovie];

        [theMovie.view removeFromSuperview];

        // 释放视频对象,此对象由上面建立视频对象时候所alloc,在此做释放操作

        [theMovie release];

        // NSLog(@"视频播放完成");

    }

    本文转载至:http://blog.sina.com.cn/s/blog_945590aa0101bytk.html

  • 相关阅读:
    .NET内存管理、垃圾回收
    C#容器类,性能介绍
    与LINQ有关的语言特性
    IMEI
    IMSI
    无源码调试smali
    IDA远程调试 在内存中dump Dex文件
    error C4996: 'scanf': This function or variable may be unsafe.
    vue 用axios实现调用接口下载excel
    读《JavaScript权威指南》笔记(三)--对象
  • 原文地址:https://www.cnblogs.com/Camier-myNiuer/p/3159535.html
Copyright © 2011-2022 走看看