博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
IOS视频播放器的制作
阅读量:5216 次
发布时间:2019-06-14

本文共 1992 字,大约阅读时间需要 6 分钟。

利用自带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(145, 250, 70, 80)];

    [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

转载于:https://www.cnblogs.com/Camier-myNiuer/p/3159535.html

你可能感兴趣的文章
IntelliJ IDEA 12集成Tomcat 运行Web项目
查看>>
java,多线程实现
查看>>
个人作业4-alpha阶段个人总结
查看>>
android smack MultiUserChat.getHostedRooms( NullPointerException)
查看>>
递归-下楼梯
查看>>
实用的VMware虚拟机使用技巧十一例
查看>>
监控工具之---Prometheus 安装详解(三)
查看>>
Azure Iaas基础之---创建虚拟机
查看>>
不错的MVC文章
查看>>
网络管理相关函数
查看>>
IOS Google语音识别更新啦!!!
查看>>
20190422 T-SQL 触发器
查看>>
[置顶] Linux终端中使用上一命令减少键盘输入
查看>>
poj1422_有向图最小路径覆盖数
查看>>
BootScrap
查看>>
[大牛翻译系列]Hadoop(16)MapReduce 性能调优:优化数据序列化
查看>>
WEB_点击一百万次
查看>>
CodeForces - 878A Short Program(位运算)
查看>>
路冉的JavaScript学习笔记-2015年1月23日
查看>>
Mysql出现(10061)错误提示的暴力解决办法
查看>>