Я пытаюсь воспроизвести простой файл mp4 во весь экран при загрузке представления. Вот код:iOS не может воспроизводить видео
Я НЕ получаю видео вообще, но я знаю, что viewDidLoad вызывается и что есть представление.
//
// FirstViewController.m
// WSTR Finale
//
// Created by Chris Muench on 10/6/14.
// Copyright (c) 2014 World Series of Team Roping. All rights reserved.
//
#import "WatchLiveViewController.h"
#import <MediaPlayer/MediaPlayer.h>
@interface WatchLiveViewController()
@end
@implementation WatchLiveViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
NSURL *movieURL = [NSURL URLWithString:@"http://download.wavetlan.com/SVV/Media/HTTP/H264/Talkinghead_Media/H264_test1_Talkinghead_mp4_480x360.mp4"];
MPMoviePlayerController *moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
moviePlayer.controlStyle = MPMovieControlStyleFullscreen;
moviePlayer.view.transform = CGAffineTransformConcat(moviePlayer.view.transform, CGAffineTransformMakeRotation(M_PI_2));
UIWindow *backgroundWindow = [[UIApplication sharedApplication] keyWindow];
[moviePlayer.view setFrame:backgroundWindow.frame];
[backgroundWindow addSubview:moviePlayer.view];
[moviePlayer play];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
ли работать это без преобразования? Вероятно, вам следует рассмотреть использование backgroundWindow.bounds вместо .frame, чтобы избежать дублирования смещений. –
Я уверен, что вы знаете, что свойства «frame» и «bounds» не определены (это может быть даже «CGRectNull») перед тем, как вы поместите фактический контроллер представления в стек навигации, и вызывается метод '-viewDidLoad' определенно _before_. – holex
Я попытался изменить его на viewDidAppear, и теперь я просто получаю большой черный экран без каких-либо видеоконтроллеров или видео –