2

似乎是一件简单的事情,对吗?转到目标的摘要选项卡并将“支持的界面方向”设置为仅横向。您会认为这意味着该应用程序将仅是横向的。但不是。

例如,在运行 5.1 的设备上,如果您打开应用程序并将手机保持在正确的横向右侧位置,您将看到视图逆时针旋转 90 度,好像它认为它应该处于纵向模式,除非您添加类似这个:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    // Return YES for supported orientations
    return UIInterfaceOrientationIsLandscape(interfaceOrientation);
}

但这仅适用于一个视图控制器,谁知道它是否适用于所有操作系统版本。

那么如何只制作应用程序景观呢?我是否必须将该代码添加到应用程序中的每个视图控制器?我不需要任何旋转。我所有的视图都是在 Landscape 中设计的。我只希望应用程序以横向右模式打开并保持这种状态。我想支持 iOS 5 及更高版本。

4

3 回答 3

3

引入了一些新方法,您必须与旧方法一起实施,如下所示

-(BOOL)shouldAutorotate
{
    return YES;
}

-(NSUInteger)supportedInterfaceOrientations
{
    return UIInterfaceOrientationMaskLandscape;
}
于 2013-03-21T16:33:07.480 回答
0

在 Xcode 中,您可以导航到您的项目设置 -> 摘要 -> iPhone/iPod 部署信息。您可以在此处选择支持的界面方向。您还可以通过在应用程序范围内添加所需的界面方向来编辑应用程序的 info.plist 中的“支持的界面方向”数组。

于 2013-03-21T16:12:09.383 回答
0

在 info.plist 中将方向设置为横向

于 2013-03-21T16:12:53.793 回答