代码是:
OptionsTableViewController *optionsTableVc = [[OptionsTableViewController alloc] initWithItems:itemNames andSelectedItem:-1 andOrigin:-1];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:optionsTableVc];
optionsTableVc.delegate = self;
[self presentViewController:nav animated:YES completion:nil];
OptionsTableViewController
是一个自定义的viewcontroller,它继承自UITableViewController
,一个简单的对象
此代码在纵向,向右旋转一次或向左旋转一次时效果很好 - 但是当我尝试在方向更改为UpsideDown后尝试执行此代码时 - 它会停止工作 - 当我尝试执行它时,当前视图变为“翻转”(即从上下颠倒,或从左侧到右侧的景观)并立即消失。
答案 0 :(得分:1)
您要更改的视图控制器可能没有向upsideDown的以下函数返回yes
-(BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation
{
}
如果您的目标视图控制器中还没有此功能,您将需要添加它并为您想要支持的所有方向返回yes(听起来可能都是)。如果你想支持所有方向,你可以从这个函数返回yes,这应该可以解决你的问题。
答案 1 :(得分:0)
添加此行修复了奇怪的行为:
nav.modalPresentationStyle = UIModalPresentationPageSheet;