在 iOS5 中,您可以使用此代码段来强制定向:
UIViewController *c = [[UIViewController alloc]init];
[self presentModalViewController:c animated:NO];
[self dismissModalViewControllerAnimated:NO];
[c release];
然而,这会在 iOS6 中导致 EXC_BAD_ACCESS。如何在 iOS6 中强制某个方向?
只是为了完成前面的答案,你应该这样做:
UIViewController *viewController = [[UIViewController alloc] init];
[self presentViewController:viewController animated:NO completion:^{
[viewController dismissModalViewControllerAnimated:NO];
}];
iOS 6 不再受保密协议约束。
如果有人仍然关心这个,这里是 iOS6 代码片段(我把它放在我的 viewDidLoad 例程中):
UIViewController *viewController = [[UIViewController alloc] init];
viewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentViewController:viewController animated:NO completion:^{
[self dismissViewControllerAnimated:NO completion:nil];
}];
起初presentModalViewController
并且dismissModalViewControllerAnimated
已被弃用,iOS6 可能无法正确使用这些方法。您应该使用类似的方法来代替编译块。
第二件事是[self dismissModalViewControllerAnimated:NO];
首先试图解雇自己。在你的情况下这是正确的吗?
最后一件事 iOS6 在 NDA 之下