3

使用iPhone4s iOS7,屏幕方向为横向

- 使用以下 SDK 构建应用程序

我使用 iOS6 SDK 和 iOS7 SDK 构建了应用程序,并检查了每个屏幕分辨率。下面显示了结果:

iOS6 SDK:

[[UIScreen mainScreen] bounds]           == (0, 0, 320, 480)
[[UIScreen mainScreen] applicationFrame] == (0, 0, 300, 480)

iOS7 SDK:

[[UIScreen mainScreen] bounds]           == (0, 0, 300, 480)
[[UIScreen mainScreen] applicationFrame] == (0, 0, 320, 480)

为什么我们在 iOS7 中得到反转值?

4

1 回答 1

2

是的。在 iOS6 及更低版本中,视图中不包含状态栏。但是在 iOS7 中状态栏是包含在主视图中的。如果您使用导航控制器,那么您可以通过设置导航栏的 Translucent 和 Opaque 属性来获得 iOS6 行为。

[self.navigationController.navigationBar setOpaque:YES];
[self.navigationController.navigationBar setTranslucent:NO];

同样的标签栏在 iOS7 中默认也是半透明的。您可以通过设置这些属性将它们设置为不透明。

[self.tabBarController.tabBar setOpaque:YES];
[self.tabBarController.tabBar setTranslucent:NO];
于 2013-11-06T13:59:49.433 回答