gpt4 book ai didi

ios - 视频 iOS 11/xcode 9

转载 作者:行者123 更新时间:2023-11-29 11:43:52 25 4
gpt4 key购买 nike

我使用此代码开始播放视频(不是全屏)。人们可以按'全屏' 按钮切换到全屏。然而,在 iOS 11 测试版中,视频在全屏模式下变黑,我无法反转它或让它再次播放。

是否有一个简单的修复程序来更新我的 iOS 11 代码?或者有谁知道在哪里可以找到这个样本。我搜索过,但还没有找到任何东西。非常感谢,梅格

-(void)viewDidLoad {

[super viewDidLoad];

// grab a local URL to our video
NSURL *videoURL = [[NSBundle mainBundle]URLForResource:@"pres 2" withExtension:@"m4v"];

// create an AVPlayer
AVPlayer *player = [AVPlayer playerWithURL:videoURL];

// create a player view controller
self.controller = [[AVPlayerViewController alloc]init];
controller.player = player;
[player play];


// show the view controller
[self addChildViewController:controller];
[self.view addSubview:controller.view];
controller.view.frame = CGRectMake(0,25, 750, 422);

}


-(void)playerItemDidReachEnd:(NSNotification *) notification{
//remove the player

}


-(void) viewWillDisappear:(BOOL)animated{

[super viewWillDisappear:animated];

[controller.player replaceCurrentItemWithPlayerItem:nil];
}

-(void) viewDidDisappear:(BOOL)animated{

[super viewDidDisappear:animated];
[controller.player replaceCurrentItemWithPlayerItem:nil];

}

最佳答案

@Oliver 胡嗨,奥利弗,Apple 给了我一个很好的答复。它不是错误,而是代码中缺少的一行。还有前面提到的调用Allen应该加入viewdidload!这是 Apple 的回答:

如果你需要在 view controller 被 dismissed 但没有被释放时拆解,你应该将调用包装在 -[UIViewController isBeingDismissed] 中,像这样:

-(void) viewWillDisappear:(BOOL)animated{

[super viewWillDisappear:animated];

if ([self isBeingDismissed])
{
[controller.player replaceCurrentItemWithPlayerItem:nil];
}
}

-(void) viewDidDisappear:(BOOL)animated{

[super viewDidDisappear:animated];
if ([self isBeingDismissed])
{
[controller.player replaceCurrentItemWithPlayerItem:nil];
}
}

此外,您还应该在嵌入时调用 [controller didMoveToParentViewController:self]

关于ios - 视频 iOS 11/xcode 9,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45036171/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com