gpt4 book ai didi

ios - 在 iOS 7 中,使用 UIModalPresentationCurrentContext 进行动画模式演示不会设置动画

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:16:25 24 4
gpt4 key购买 nike

在 iOS 8 中,当呈现模态(假设具有透明背景)时,我们需要设置 segue(或模态)以使用 UIModalPresentationOverCurrentContext 的呈现样式。这按预期工作。

要在 iOS 7 上完成同样的事情,您需要将呈现 View Controller 设置为具有 UIModalPresentationCurrentContext 的模态呈现样式。这是我遇到问题的地方。我用动画呈现模态,但它没有动画。呈现后,一切正常,甚至动画解雇。此外,如果我将演示文稿样式更改为 UIModalPresentationFullScreen,它会正确设置动画。

我已经四处搜索并阅读了其他帖子,但找不到导致此问题的原因或解决方案。

最佳答案

  ViewController *vcObj = [[ViewController alloc] initWithNibName:NSStringFromClass([ViewController class]) bundle:nil];
UINavigationController *navCon = [[UINavigationController alloc] initWithRootViewController:vcObj];

if ([[UIDevice currentDevice].systemVersion floatValue] >= 8.0) {

navCon.providesPresentationContextTransitionStyle = YES;
navCon.definesPresentationContext = YES;
navCon.modalPresentationStyle = UIModalPresentationOverCurrentContext;

[self presentViewController:navCon animated:NO completion:nil];
}
else {

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
[self presentViewController:navCon animated:NO completion:^{
[navCon dismissViewControllerAnimated:NO completion:^{
appDelegate.window.rootViewController.modalPresentationStyle = UIModalPresentationCurrentContext;
[self presentViewController:navCon animated:NO completion:nil];
appDelegate.window.rootViewController.modalPresentationStyle = UIModalPresentationFullScreen;

}];
}];
}

关于ios - 在 iOS 7 中,使用 UIModalPresentationCurrentContext 进行动画模式演示不会设置动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28013596/

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