iPhone开发笔记(1)MPMoviePlayerController的用法和播放时只有声音没有图像的解决办法...
为什么80%的码农都做不了架构师?>>>
MPMoviePlayerController类是一个功能非常强大的类,它可以播放MOV、MP4、MPV、M4V、3GP、MP3、AIFF和M4A,定义起来也非常简单。下面说一下MPMoviePlayerController的简单用法和我使用时出现的问题。
我用的是SDK4.1,现在应该不会有还在用sdk3的骨灰级开发者了吧。
- MPMoviePlayerController *moviePlayer;moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:要播放文件的URL];moviePlayer.scalingMode = MPMovieScalingModeAspectFill;[moviePlayer.view setFrame:CGRectMake(30, 210, 250, 350)];[moviePlayer.view setBackgroundColor:[UIColor clearColor]];[self.view addSubview:moviePlayer.view];[moviePlayer play];
说明:
1、scalingMode属性决定的是添加的视频播放器的填充方式。
2、请一定要调用moviePlayer.view的setFrame方法,要不然你添加的播放器就会出现只播放声音而没有图像的情况。
3、在设置好moviePlayer的各种属性后,最后不要忘了调用当前view的addSubview方法把moviePlayer.view添加为当前视图的子视图。
4、如果播放的文件是音频文件而不是视频文件,那么播放的时候只有一个播放栏。
可以使用下列样式:
MPMovieControlModeDefault 显示播放/暂停、音量和时间控制
MPMovieControlModeVolumeOnly 只显示音量控制
MPMovieControlModeHidden 没有控制器
5屏幕宽高比例
你可以使用下列宽高比值:
MPMovieScallingModeNone 不做任何缩放
MPMovieScallingModeAspectFit 适应屏幕大小,保持宽高比
MPMovieScallingModeAspectFill 适应屏幕大小,保持宽高比,可裁剪
MPMovieScallingModeFill 充满屏幕,不保持宽高比
----------------------------------------------------------http://blog.sina.com.cn/iostang
你的程序可以配置电影播放器在何时候发送通知,包括结束加载内容、技术播放、改变宽高比等。电影播放器会将事件发送到 Cocoa 的通知中心,你可以对其进行配置,指定将这些事件转发到你的应用程序的一个对象。要接收这些通知,需要使用 NSNotificationCenter 类,为电影播放器添加一个观察者(observer):
- NSNotificationCenter* notificationCenter = [NSNotificationCenter defaultCenter];
- [ notificationCenter addObserver:self selector:@selector(moviePlayerPreloadFinish:) name:MPMoviePlayerContentPreloadDidFinishNotification object:moviePlayer ];
通知会发到你指定的委托类和目标方法。通知参数让你可以知道是哪个事件触发了委托方法:
- -(void)moviePlayerPreloadDidFinish:(NSNotification*)notification{
- //添加你的处理代码
- }
你会观察到以下通知:
MPMoviePlayerContentPreloadDidFinishNotification
当电影播放器结束对内容的预加载后发出。因为内容可以在仅加载了一部分的情况下播放,所以这个通知可能在已经播放后才发出。
MPMoviePlayerScallingModeDidChangedNotification
当用户改变了电影的缩放模式后发出。用户可以点触缩放图标,在全屏播放和窗口播放之间切换。
MPMoviePlayerPlaybackDidFinishNotification
当电影播放完毕或者用户按下了Done按钮后发出。
转载于:https://my.oschina.net/jilin/blog/180405
iPhone开发笔记(1)MPMoviePlayerController的用法和播放时只有声音没有图像的解决办法...相关推荐
- iphone 开发笔记
iphone 开发笔记 退回输入键盘 - (BOOL)textFieldShouldReturn:(id)textField{ [textField resignFirstResponde ...
- iphone开发笔记和技巧总结
在iphone程序中实现截屏的一种方法: //导入头文件 #importQuartzCore/QuartzCore.h //将整个self.view大小的图层形式创建一张图片imageUIGrap ...
- ios学习--iphone开发笔记和技巧总结(原址持续更新)
ios学习--iphone开发笔记和技巧总结(原址持续更新) 分类: ios Object-C2012-04-18 10:16 2716人阅读 评论(1) 收藏 举报 uiviewiphonelist ...
- oracle job enq tx,【学习笔记】Oracle等待事件 enq:TX–allocate ITL entry产生原因和解决办法...
天萃荷净 运维DBA反映Oracle数据库出现enq:TX–allocate ITL entry等待事件,结合案例分析该等待事件产生原因和解决办法 今天在分析一份awr中发现了较为明显的enq: TX ...
- [每日100问][2011-10-11]iphone开发笔记,今天你肿了么
[url=http://www.buildapp.net/iphone/show.asp?id=24500]为啥gamecenter在沙箱里好使,在正式环境中分数和成就都提交不了呢????[/url] ...
- [每日100问][2011-9-06]iphone开发笔记,今天你肿了么
[url=http://www.buildapp.net/iphone/show.asp?id=5700]怎么让view保持不动,实现层次布局[/url] [url=http://www.builda ...
- [每日100问][2011-9-30]iphone开发笔记,今天你肿了么
[url=http://www.buildapp.net/iphone/show.asp?id=18700]有apple打款的时候正巧要更换银行信息的么?[/url] [url=http://www. ...
- [每日100问][2011-9-08]iphone开发笔记,今天你肿了么
[url=http://www.buildapp.net/iphone/show.asp?id=6700]请问,我想做iphone的真机调试,我的同一程序有办法对应多个固件版本吗?[/url] [ur ...
- [每日100问][2011-10-09]iphone开发笔记,今天你肿了么 编辑
[url=http://www.buildapp.net/iphone/show.asp?id=23300]<font color=#0000FF>中秋不只赏月趣! 在香港和法國生活类获选 ...
最新文章
- 整理了 70 个 Python 面向对象编程案例,怎能不收藏?
- Sonatype收购Vor Security,扩展对Nexus开源组件的支持
- PHP eval函数
- FPGA中block ram和distributed ram的区别
- Web应用中的缓存一致性问题
- MAC安装MySQL
- dpdk18.11 收发包流程分析
- redis是什么_什么是Redis?为什么我们要用Redis?
- web-attack 1-5视频汇总
- Android 系统 (129)---ODM 开发用户常见需求文档(三)
- blob字段如何更新_Axure RP8 中继器:字段增删改
- 12平键标准尺寸规格表_郑州花纹板加工规格尺寸表
- android 关闭服务代码,android – 调用stopService方法时,服务不会停止
- C语言经典例题,结构体
- Obsidian V0.14.6版本下实时渲染总是出Bug,时常渲染不出来
- object类型转换为int类型
- 防盗报警器c语言程序,基于AT89C2051设计的无线防盗报警器 附程序
- vue 跳转html页面,vue项目实现页面的跳转
- 数据库期末大作业:机票预定信息系统数据库设计与实现
- 软件工程(3)微信抢票实验个人总结