在iPhone X Simulator的顶部和底部看到黑条


132

在iPhone X模拟器(GM种子)中运行我的应用程序,我注意到两个奇怪的效果:

  • 该应用程序未使用整个屏幕空间(顶部和底部为黑色)
  • 标题栏下方有一个奇怪的白色栏

在此处输入图片说明

有人知道这里发生了什么以及如何解决吗?我在Interface Builder中找不到任何新设置。


1
您正在使用启动屏幕文件还是启动图像?您是否正在使用自动版式?
rmaddy

1
启动图像和自动布局
Darko

3
为什么要使用旧样式的启动图像而不是更简单的启动屏幕文件?无论如何,您是否添加了新屏幕尺寸所需的新启动图像?
rmaddy

我找不到iPhone X尺寸的启动图像。但是使用启动屏幕可以解决这两个问题。请修改您的回复,我会将其标记为已回答。谢谢!
Darko

5
您不应该使用启动映像。Launch Screen.storyboard改为使用
onmyway133

Answers:


186

使用启动映像(而不是更简单的启动屏幕文件)时,需要为要支持的每种设备大小提供适当大小的启动映像。添加其他启动图像后,您的应用应利用新的屏幕尺寸。

新的iPhone X需要一张启动图像,尺寸为1125px×2436px,这是375pt×812pt的3倍图像。

当然,如果您切换到使用启动屏幕文件而不是单个启动图像,则您的应用将自动适应所有设备尺寸,而无需进行任何其他工作。


2
您能否详细介绍如何将新的iphoneX图像集成到启动屏幕中?我添加到Xcode 9的任何图像集都没有iphoneX插槽,只有启动图像集。
Christian Cerri

1
@ChristianCerri图像集未绑定到设备。他们只是给您1x,2x和3x选项。我指的是启动图像。这些是唯一的设备特定图像。如果您有关于将不同尺寸的图像添加到“启动”屏幕的问题,请针对该问题发表您自己的问题。
rmaddy

19
到底如何在iPhone X模拟器的顶部和底部启动与blackbar相关的图像?
TomSawyer

1
@TomSawyer如果您的应用程序不使用启动屏幕情节提要,则启动图像将确定您的应用程序支持的屏幕大小。
rmaddy

1
如果您仍然看到黑条并使用启动屏幕,请参阅@sabiland的答案。如果可以用关于如何为iPhone X正确设计启动屏幕的
花絮

36

我已经在iPhone X中解决了这个问题。启动图像大小(1125 * 2436px)请按照以下步骤进行操作。1.i)在Xcode中选择项目名称。ii)选择您的项目目标iii)然后选择启动图像源 在此处输入图片说明

  1. 您可以获取“迁移”弹出窗口i)选择资产ii)选择“迁移”

在此处输入图片说明

  1. 之后,在项目中选择您的Assets.xcassets 在此处输入图片说明

  2. 然后选择启动资产中的图像i)然后选择属性检查器在此处输入图片说明

  3. 最后检查您的启动图像源。您可以看到已设置启动图像。

在此处输入图片说明


为图片投票。但是,您应该从上一个图像的“启动屏幕文件”文本字段中清除“启动屏幕”文本。
NadtheVlad

谢谢@NadtheVlad。请清除启动屏幕文件中的“ LaunchScreen”文本,然后从Xcode中删除LaunchScreen.Storyboard文件。
Karthickkck

谢谢!由于我的应用程序仅为纵向,因此启动图像中的横向复选框引起了问题。
green0range

谢谢您,遇到了同样的问题,并通过添加启动映像(SDL2应用程序)解决了该问题
Viktor Sehr,


14

我已经弄清楚了如何解决(尽管我仍然不明白为什么仅在iPhone X上会发生这种情况)iPhone X上的LaunchScreen故事板出现了黑色的顶部和底部栏。

我有一个UIImageView的LaunchScreen故事板。

UIImageView的top&bottom必须固定到SuperView的 top&bottom。不要到SafeArea


这解决了我的LauchScreen自动布局问题。但是,我没有固定在边界上,而是在水平和垂直方向上居中,并将宽度/高度与SuperView相等。
Yuri Natividade

仅在将其他情节提要中的视图固定到视图顶部/底部(而不是布局指南)之后,此方法才起作用。在iPhone X模式下,请务必检查情节提要。
Crashalot

为什么当我给出限制时我无法在情节
提要中看到超级

10

我通过在文本Lanch Screen File字段中插入一些随机文本来修复它。我什至没有启动屏幕文件... XCode如此麻烦。

更新

虽然这在将二进制文件上传到iTunes Connect时在模拟器中修复了该问题(仍然很奇怪,并且很意外),但由于找不到名为“ random-name”的LanchScreen文件而失败了


正确的它适用于iPhoneX。但不适用于其他任何设备。
Govaadiyo

是的是的!这可以在xcode中修复它。谢谢!这足以进行测试。将来会购买真正的iphone X来避免xcode问题进行测试。
菲利斯·萨瑟兰

5

在尝试更新我一段时间未使用的应用程序时遇到了这个问题。

在Xcode 9.4上,我可以通过以下操作解决此问题:

  1. 通过转到文件->新建->文件...->启动屏幕来添加启动屏幕

在此处输入图片说明

  1. 确保在项目设置下选择了新添加的启动屏幕情节提要板作为启动屏幕文件。

在此处输入图片说明


1

如果您已经有一个1125px×2436px的启动图像,但该应用程序仍未使用全屏检查,请确保您的图像为PNG。


1

如果删除了LaunchScreen.storyboard;选择您的项目,选择项目目标,常规->应用程序图标和启动图像->启动屏幕文件:在此处选择Main.storyboard而不是LaunchScreen.storyboard


1

只是有这个问题...当我选择项目和正确的目标时,在应用程序图标和“启动屏幕图像”选项卡下的“启动屏幕文件”为空白。我将其设置为默认的LaunchScreen,并解决了我遇到的调整大小问题。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.