为什么80%的码农都做不了架构师?>>>   

MPMoviePlayerController类是一个功能非常强大的类,它可以播放MOV、MP4、MPV、M4V、3GP、MP3、AIFF和M4A,定义起来也非常简单。下面说一下MPMoviePlayerController的简单用法和我使用时出现的问题。

我用的是SDK4.1,现在应该不会有还在用sdk3的骨灰级开发者了吧。

[c-sharp]  view plain copy
  1. 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):

[html]  view plain copy print ?
  1. NSNotificationCenter* notificationCenter = [NSNotificationCenter defaultCenter];
  2. [ notificationCenter addObserver:self selector:@selector(moviePlayerPreloadFinish:) name:MPMoviePlayerContentPreloadDidFinishNotification object:moviePlayer ];

通知会发到你指定的委托类和目标方法。通知参数让你可以知道是哪个事件触发了委托方法:

[html]  view plain copy print ?
  1. -(void)moviePlayerPreloadDidFinish:(NSNotification*)notification{
  2. //添加你的处理代码
  3. }

你会观察到以下通知:
MPMoviePlayerContentPreloadDidFinishNotification 
当电影播放器结束对内容的预加载后发出。因为内容可以在仅加载了一部分的情况下播放,所以这个通知可能在已经播放后才发出。
MPMoviePlayerScallingModeDidChangedNotification 
当用户改变了电影的缩放模式后发出。用户可以点触缩放图标,在全屏播放和窗口播放之间切换。
MPMoviePlayerPlaybackDidFinishNotification 
当电影播放完毕或者用户按下了Done按钮后发出。

更多 2

转载于:https://my.oschina.net/jilin/blog/180405

iPhone开发笔记(1)MPMoviePlayerController的用法和播放时只有声音没有图像的解决办法...相关推荐

  1. iphone 开发笔记

    iphone 开发笔记 退回输入键盘   - (BOOL)textFieldShouldReturn:(id)textField{     [textField resignFirstResponde ...

  2. iphone开发笔记和技巧总结

    在iphone程序中实现截屏的一种方法: //导入头文件   #importQuartzCore/QuartzCore.h //将整个self.view大小的图层形式创建一张图片imageUIGrap ...

  3. ios学习--iphone开发笔记和技巧总结(原址持续更新)

    ios学习--iphone开发笔记和技巧总结(原址持续更新) 分类: ios Object-C2012-04-18 10:16 2716人阅读 评论(1) 收藏 举报 uiviewiphonelist ...

  4. oracle job enq tx,【学习笔记】Oracle等待事件 enq:TX–allocate ITL entry产生原因和解决办法...

    天萃荷净 运维DBA反映Oracle数据库出现enq:TX–allocate ITL entry等待事件,结合案例分析该等待事件产生原因和解决办法 今天在分析一份awr中发现了较为明显的enq: TX ...

  5. [每日100问][2011-10-11]iphone开发笔记,今天你肿了么

    [url=http://www.buildapp.net/iphone/show.asp?id=24500]为啥gamecenter在沙箱里好使,在正式环境中分数和成就都提交不了呢????[/url] ...

  6. [每日100问][2011-9-06]iphone开发笔记,今天你肿了么

    [url=http://www.buildapp.net/iphone/show.asp?id=5700]怎么让view保持不动,实现层次布局[/url] [url=http://www.builda ...

  7. [每日100问][2011-9-30]iphone开发笔记,今天你肿了么

    [url=http://www.buildapp.net/iphone/show.asp?id=18700]有apple打款的时候正巧要更换银行信息的么?[/url] [url=http://www. ...

  8. [每日100问][2011-9-08]iphone开发笔记,今天你肿了么

    [url=http://www.buildapp.net/iphone/show.asp?id=6700]请问,我想做iphone的真机调试,我的同一程序有办法对应多个固件版本吗?[/url] [ur ...

  9. [每日100问][2011-10-09]iphone开发笔记,今天你肿了么 编辑

    [url=http://www.buildapp.net/iphone/show.asp?id=23300]<font color=#0000FF>中秋不只赏月趣! 在香港和法國生活类获选 ...

最新文章

  1. 整理了 70 个 Python 面向对象编程案例,怎能不收藏?
  2. Sonatype收购Vor Security,扩展对Nexus开源组件的支持
  3. PHP eval函数
  4. FPGA中block ram和distributed ram的区别
  5. Web应用中的缓存一致性问题
  6. MAC安装MySQL
  7. dpdk18.11 收发包流程分析
  8. redis是什么_什么是Redis?为什么我们要用Redis?
  9. web-attack 1-5视频汇总
  10. Android 系统 (129)---ODM 开发用户常见需求文档(三)
  11. blob字段如何更新_Axure RP8 中继器:字段增删改
  12. 12平键标准尺寸规格表_郑州花纹板加工规格尺寸表
  13. android 关闭服务代码,android – 调用stopService方法时,服务不会停止
  14. C语言经典例题,结构体
  15. Obsidian V0.14.6版本下实时渲染总是出Bug,时常渲染不出来
  16. object类型转换为int类型
  17. 防盗报警器c语言程序,基于AT89C2051设计的无线防盗报警器 附程序
  18. vue 跳转html页面,vue项目实现页面的跳转
  19. 数据库期末大作业:机票预定信息系统数据库设计与实现
  20. 软件工程(3)微信抢票实验个人总结

热门文章

  1. 第二代NumPy?阿里开源超大规模矩阵计算框架Mars
  2. 多目标跟踪 | AI产品经理需要了解的CV通识(三)
  3. 干货丨一位16岁CEO教你如何在高中阶段入门人工智能
  4. 分享丨李飞飞、吴恩达、Bengio等人的顶级深度学习课程
  5. OpenAI最新研究:如何通过无监督学习提升「自然语言理解能力」?
  6. 面对5G,华为、中兴及三大运营商怎么布局?
  7. 波士顿咨询:2018最具创新力企业50强
  8. 宁做程序员,不做 CTO!估值 50 亿美元公司的创始人只想专注编程
  9. 职场不需要中年,但中年需要职场
  10. 区块链还可以这么玩?“点亮莫高窟”背后的腾讯云区块链