我很困惑。我没有状态栏,也不知道如何设置滚动视图的尺寸。是320 x 480还是320 x 460?因为当我将其拖到情节提要板上并填满整个屏幕时,它说是320 x 460,但是当我向其中添加子视图时,它们的位置就很奇怪,就像视图短了20像素之类。
编辑:我只是有点困惑,因为当我的状态栏消失时,它不会重新调整视图大小,只会使视图变短20像素,这真的没有道理,对吗?难道不是让它延长20像素而不是仅仅切断20像素吗?
最佳答案
iPhone屏幕绝对是320x480。
您在情节提要板上遇到问题的原因是,有很多地方可以告诉您您没有状态栏。您需要跟踪所有这些对象(3?),并确保其没有显示状态栏。
最常见的问题是,在嵌套的viewController中将状态栏专门设置为off时,您可以在一个较早的viewController中打开或推断状态栏。这导致它没有状态栏,但显示为460像素高。正如您在图像中看到的,它明显短了20个像素。那是因为segue告诉它,当提示出现时,即使它本身没有状态,也要在状态栏下方显示它。如果我将模式从模式更改为推送,问题就消失了。或者,如果我将第一个viewController设置为没有statusBar,那么问题就消失了。还要注意,在某些情况下,Xcode可能需要重新启动才能正确更新其图形情节提要。
还有一件事
同样在代码或情节提要中设置隐藏状态栏与在.info文件中将UIStatusBarHidden
设置为YES
不同。如果您在其他任何地方隐藏它时都将其保留为空,则default.png将被剪切并在加载时显示状态栏,然后在应用程序启动完成后消失。因此,请务必将其隐藏在此处,以获得一致的用户体验。
码
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
[application setStatusBarHidden:YES];
}