我正在编写代码来在这样的方法中在ownservices.m类中播放视频文件。
- (void)playVediofile:(NSString *)vedioFileName {
NSLog(@"playing vedio file ");
NSURL *movieUrl = [NSURL fileURLWithPath:
[[NSBundle mainBundle] pathForResource:vedioFileName ofType:@"mp4"]];
MPMoviePlayerController* myMovie=[[MPMoviePlayerController alloc]
initWithContentURL:movieUrl];
myMovie.scalingMode = MPMovieScalingModeNone;
myMovie.initialPlaybackTime = 2.0;
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(movieFinished:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:myMovie];
[self.viewcontroller addSubview:myMovie.view];
[myMovie play];
}
我从ownservicesviewcontroller.m类调用此方法,如按钮单击事件。
ownServices *obj = [[ownServices alloc]init];
[obj playVediofile:@"Movie"];
我正在获取视频片段的音频,但它没有显示视频。
但我将MPMoviePlayerController视图添加到viewcontroller。
我不明白为什么它没有显示。
为什么我在单独的类中进行操作是因为我的需求是这样的,需要维护ownservices类中的所有方法并从ownservicesviewcontroller.m中调用它们
任何人都可以帮助我。
谢谢。
答案 0 :(得分:2)
您需要设置myMovie.view
的frame属性:
例如你可以把它设置为父母边界:
myMovie.view.frame = self.viewcontroller.bounds;
除此之外,请检查您的实例变量命名。看来,你将视图实例命名为“viewcontroller”,这很奇怪。如果viewcontroller实际上是一个UIViewController类型,你需要将myMovie.view添加到viewcontroller的view属性而不是直接添加到viewcontroller ......
答案 1 :(得分:0)
您需要为MPMoviePlayerController的视图设置框架
喜欢:myMovie.view.frame = CGRectMake(0.0,0.0,320.0,480.0);