gpt4 book ai didi

ios - 无法使模态视图出现在 iPad iOS6 的屏幕中央

转载 作者:可可西里 更新时间:2023-11-01 05:02:23 24 4
gpt4 key购买 nike

我想在 iPad 屏幕上表示的 modalviewcontrollers 有问题。如果我保持原样大小,那么一切都可以居中。但是我对这些 View 的信息很少,所以我需要调整它们的大小。

因此,当我调整它们的大小时,我不能强制它们出现在屏幕中间。即使我设法使其中一个在一个方向上居中,它在另一个方向上也会乱七八糟。

这是我当前的代码:

UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:acvc];
[nav setModalPresentationStyle:UIModalPresentationFormSheet];
[nav setModalTransitionStyle: UIModalTransitionStyleCoverVertical];
[[acvc view] setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"main_bg.jpg"]]];
[self presentViewController:nav animated:YES completion:nil];
nav.view.superview.frame = CGRectMake(self.view.bounds.size.width/2 + 175, self.view.bounds.size.height/2 - 125, 350, 250);
// nav.view.superview.center = self.view.window.center;

非常感谢任何帮助,谢谢。

最佳答案

这是一种适用于 iOS7 以及 iOS6 和 iOS5 的方法,并且仍然允许您使用 UIModalTransitionStyleCoverVertical:

-(void)presentController:(UIViewController*)controller fromRootController:(UIViewController*)rootController withSize:(CGSize)size
{
UINavigationController* nav = [[UINavigationController alloc] initWithRootViewController:controller];
nav.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
nav.modalPresentationStyle = UIModalPresentationFormSheet;
[rootController presentModalViewController:nav animated:YES];
if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0)
{
nav.view.superview.backgroundColor = [UIColor clearColor];
nav.view.bounds = CGRectMake(0, 0, size.width, size.height);
}
else
{
nav.view.superview.bounds = CGRectMake(0, 0, size.width, size.height);
}
}

关于ios - 无法使模态视图出现在 iPad iOS6 的屏幕中央,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18039852/

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