LaunchScreen.storyboard在iPhone X上未完全占据高度

时间:2019-03-06 19:38:56

标签: ios uistoryboard iphone-x

我正在尝试在新的Xcode项目上设置启动图像,但是无论我在LaunchScreen.storyboard中进行了什么更改,应用程序和启动屏幕都不会占据iPhone X屏幕的整个高度。但是更改确实生效,因此我知道它是正确的文件。

故事板设置: Xcode window showing launch screen storyboard

在我的图标/启动设置中使用它:

Settings for launch screen and app icon

我在手机上看到的是什么,请记住状态栏被切断了……也许与它有关?

Screenshot of launch screen on device

3 个答案:

答案 0 :(得分:1)

如果您之前将 Constraints 设置为 0, 0, 0, 0 相对于 SafeArea View,请转到左侧的 ViewController enter image description here

并选择约束,一一。在右侧面板上,选择尺寸检查器: 选择 Second Item 并使其相对于 Superview。

enter image description here

enter image description here

答案 1 :(得分:0)

A)如果您只是从情节提要中做到这一点

  1. 如果要全屏显示并在安全区域上方,则绝对应使用Safe Area并将margins/leading/trailing设置为superview而不是安全区域。< / p>

  2. 如果您想遵守安全区域,只需将边距/前导/尾随设置为安全区域即可。

B)如果要通过编程方式从Swift设置初始屏幕,则 (发布代码以清楚了解您的情况)

  1. 如果要创建视图,然后将其附加到窗口或ViewController视图,只需在此处张贴一些代码即可。

  2. 如果要将view(启动画面)programmatically添加到Storyboard中的视图中,则只需在情节提要中调整视图以具有顶部/底部边距(或vertical spacing)与TOP的{​​{1}}和BOTTOM相关,而不与Superview的{​​{1}}相关(如果您需要全屏高度)。

有关新版iPhone中的安全区域的更多信息,请访问https://developer.apple.com/design/human-interface-guidelines/ios/visual-design/adaptivity-and-layout/

将来,如果您在情节提要中使用Safe Area而不是iPhone 8作为截图,我建议将您的预览更改为实时查看更改。还可以使用Size Inspector设置发布SplashScreen的一些屏幕截图。

答案 2 :(得分:0)

无论我尝试了什么,它都不会更新。我最终最终只是简单地重新安装了xcode 10.1并对其进行了修复。我认为有些混乱,因为我安装了3个版本的xcode。