после долгого дня изучения того, почему 1024x768 видео не будет работать на iPad 3, и много охоты на форум. Я не мог найти разумных решений этой проблемы. Кажется, много людей, которые имеют такую же ситуацию, когда отображается только черный экран.1024x768 на ipad с использованием MPMoviePlayerController
Решение должно было отображать видеоролик, требуемый как 1024x748. Причина того, что строка состояния, показанная в верхней части iPad, составляет 20 пикселей.
Надеюсь, это решает много проблем пользователей, которые возникают с этой ситуацией.
Onto мой следующий вопрос ....
Я в настоящее время видео, встроенный в мой взгляд, через MPMoviePlayerController. Это видео находится в постоянном цикле (анимированное меню). Затем у меня есть три невидимые кнопки, расположенные поверх видео, к которому вызывается метод. У меня есть только один, работающий в настоящее время, а два других - только оповещения.
Проблема, с которой я сталкиваюсь в настоящее время, заключается в том, что при нажатии кнопки я хочу другое видео для воспроизведения. Это работает отлично, НО мне хотелось бы, чтобы первое видео с FIRST играло до конца, чтобы перейти к воспроизведению следующего видео, потому что я тоже нуждаюсь в этом, и я не хочу быть уверенным в том, что он идет от одного видео к другому.
Любая обратная связь по этому вопросу было бы здорово ....
#import "MainViewController.h"
#import "VideoPlayerViewController.h"
#import <MediaPlayer/MediaPlayer.h>
#import <UIKit/UIKit.h>
@interface MainViewController()
@property (nonatomic, retain) MPMoviePlayerController *playerViewController;
@property (nonatomic, retain) VideoPlayerViewController *myPlayerViewController;
@end
@implementation MainViewController
@synthesize playerViewController = _playerViewController;
@synthesize myPlayerViewController = _myPlayerViewController;
- (void)dealloc {
self.playerViewController = nil;
self.myPlayerViewController = nil;
[super dealloc];
}
#pragma mark - View lifecycle
-(void)buttonEventOne:(id)sender {
//[[[[UIAlertView alloc] initWithTitle:@"CONTENT ONE" message:@"This will link to content one video" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] autorelease] show];
NSURL *urlTwo = [[NSBundle mainBundle] URLForResource:@"BAE_BG_anim_pt2_748" withExtension:@"mov"];
MPMoviePlayerController *playerViewController = [[MPMoviePlayerController alloc] init];
playerViewController.contentURL = urlTwo;
playerViewController.view.frame = CGRectMake(0, 0, 1024, 768);
playerViewController.controlStyle = MPMovieControlStyleNone;
//playerViewController.repeatMode = MPMovieRepeatModeOne;
[self.view addSubview:playerViewController.view];
[playerViewController play];
self.playerViewController = playerViewController;
[playerViewController release];
}
-(void)buttonEventTwo:(id)sender {
[[[[UIAlertView alloc] initWithTitle:@"CONTENT TWO" message:@"This will link to content one video" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] autorelease] show];
}
-(void)buttonEventThree:(id)sender {
[[[[UIAlertView alloc] initWithTitle:@"CONTENT THREE" message:@"This will link to content one video" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil] autorelease] show];
}
- (void)viewDidLoad {
[super viewDidLoad];
NSURL *url = [[NSBundle mainBundle] URLForResource:@"BAE_Main_Loop_748" withExtension:@"mov"];
// video player
MPMoviePlayerController *playerViewController = [[MPMoviePlayerController alloc] init];
playerViewController.contentURL = url;
[playerViewController prepareToPlay];
playerViewController.view.frame = CGRectMake(0, 0, 1024, 768);
playerViewController.controlStyle = MPMovieControlStyleNone;
playerViewController.repeatMode = MPMovieRepeatModeOne;
[self.view addSubview:playerViewController.view];
[playerViewController play];
self.playerViewController = playerViewController;
[playerViewController release];
UIButton * btnOne = [UIButton buttonWithType:UIButtonTypeCustom];
btnOne.frame = CGRectMake(260, 350, 150, 50);
[btnOne setTitle:@"" forState:UIControlStateNormal];
[btnOne addTarget:self action:@selector(buttonEventOne:)forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnOne];
UIButton * btnTwo = [UIButton buttonWithType:UIButtonTypeCustom];
btnTwo.frame = CGRectMake(620, 350, 150, 50);
[btnTwo setTitle:@"" forState:UIControlStateNormal];
[btnTwo addTarget:self action:@selector(buttonEventTwo:)forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnTwo];
UIButton * btnThree = [UIButton buttonWithType:UIButtonTypeCustom];
btnThree.frame = CGRectMake(450, 250, 150, 50);
[btnThree setTitle:@"" forState:UIControlStateNormal];
[btnThree addTarget:self action:@selector(buttonEventThree:)forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:btnThree];
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationLandscapeLeft ||
interfaceOrientation == UIInterfaceOrientationLandscapeRight);
}
@end
Возможно, вы захотите принять некоторые ответы, которые люди отправили на предыдущие вопросы, щелкнув контур «тика» ответа, который решил вашу проблему. – Diziet
ah awesome Я не знал, что вы можете это сделать! – WLyne86
Это место замечательно, кажется, что люди готовы помочь или протянуть руку, я надеюсь, что проблема, с которой я столкнулся, решила много проблем людей с этим черным экраном. – WLyne86