iphone屏幕分辨率是320x460还是320x480?

时间:2012-08-02 19:51:07

标签: iphone xcode size

我很困惑。我没有状态栏,我不知道如何制作滚动视图的尺寸。是320 x 480还是320 x 460?因为当我将它拖到故事板上并且它填满整个屏幕时它表示它是320 x 460,但是当我向它添加子视图时,它们会被奇怪地定位,因此它就像视图的长度为20像素一样。

编辑:我只是有点困惑,因为当我的状态栏消失时,它不会重新调整视图大小,它只会使视图20像素更短,这没有多大意义,对吧?它不应该让它更长20像素,而不是只切断20像素?

3 个答案:

答案 0 :(得分:7)

iPhone屏幕肯定是320x480。

您在故事板中遇到问题的原因是,有多个地方可以告诉您没有状态栏。你需要追踪所有这些(3?)并确保它没有状态栏。

最常见的问题是,您在先前的一个viewControllers中打开或推断了状态栏,而您在嵌套的viewController中将其专门设置为off。这导致它没有状态栏但显示为460像素高。正如你在图像中看到的那样,它明显缩短了20个像素。那是因为segue告诉它当它呈现给它"在"状态栏,即使它本身没有。如果我要将模式中的segue更改为推动问题就会消失。或者,如果我将第一个viewController设置为没有statusBar,那么问题就会消失。另请注意,在某些情况下,Xcode可能需要重新启动才能正确更新其图形化故事板。

enter image description here

还有一件事

同样在代码或故事板中设置隐藏状态栏与在.info文件中设置UIStatusBarHiddenYES相同。如果你把它隐藏到其他任何地方,那么你的default.png将被剪裁并在加载时显示状态栏,然后它会在应用程序完成启动后消失。因此,请务必将其隐藏在那里以获得一致的用户体验。

<强>代码

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    // Override point for customization after application launch.

    [application setStatusBarHidden:YES];
}

答案 1 :(得分:3)

它是320 x 480,你看到的20个像素是状态栏,如果你打算隐藏状态栏并想要在Interface Builder中匹配大小,你可以转到IB模拟指标 - &gt;状态栏并选择无。

这不会影响视图控制器中视图的实际大小,但是即使将视图设置为320 x 480,它也会自行调整大小以适应大小,视图控制器将自身调整为320 x如果有状态栏则为460;如果还有导航栏,则为320 x 418。

答案 2 :(得分:1)

我有点不喜欢iPhone编程,但这个20px应该是上边框,你可以看到载体和强度等。