首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么[UIViewController presentModalViewController:animated:]从左边过渡模式视图?

问为什么[UIViewController presentModalViewController:animated:]从左边过渡模式视图?
EN

Stack Overflow用户
提问于 2011-03-05 07:18:42
回答 2查看 2.2K关注 0票数 4

我正在构建一个应用程序,它在iOS 4.3下只支持iPad上的横向方向,尽管在iOS 4.2下也存在这个错误。

在应用程序中的几个地方,我将UIViewController显示为模式视图。所有这些都是使用以下模式显示的:

代码语言:javascript
复制
viewController.modalPresentationStyle = UIModalPresentationFormSheet;
viewController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
[self presentModalViewController:viewController animated:YES];

在大多数地方,它们都像预期的那样工作--模式表单表单从屏幕底部向上滑动。

但是,在两种情况下,模式表单表单从屏幕的左下角滑入。表单几乎一直向右滑动,表单的底部从视图中消失。

我不认为XIB的模拟指标会影响它们的行为,但我已经将所有XIB的方向(调用UIViewController self和模式视图控制器viewController)都设置为Landscape。

您知道为什么这两个模式表单的行为与其他表单不同吗?

EN

回答 2

Stack Overflow用户

发布于 2012-07-21 15:16:59

我认为在这里你不能在shouldAutorotate函数中返回横向方向,所以如果你想要以左/右的横向视图查看,请使用以下代码:

代码语言:javascript
复制
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return (interfaceOrientation == UIInterfaceOrientationLandscapeRight||interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
    // return YES;
}

试试这个,可能会对你有帮助。

票数 0
EN

Stack Overflow用户

发布于 2012-07-21 16:47:37

如果在NavigationController中嵌入了viewController,请确保navController shouldAutotorate也设置为横向

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5200349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档