在 iPhone X 屏幕底部获得空白(Xcode 9)
Posted
技术标签:
【中文标题】在 iPhone X 屏幕底部获得空白(Xcode 9)【英文标题】:Getting a white space at bottom of iPhone X screen (Xcode 9) 【发布时间】:2017-09-20 12:29:08 【问题描述】:我在我的项目中使用 Xcode 9,底部有一个空白,这是屏幕截图:
另外我正在使用storyboard来设计4英寸(iphone 5s/SE)作为布局。
如何避免空白?
【问题讨论】:
您需要为我们提供代码和约束来帮助您。我会先看看你的约束,你可能有问题。但随着问题的构建,我只能猜测。 @Harish :您应该按照 *** 指南接受正确答案,以便其他有类似问题的人可以得到帮助! 【参考方案1】:您的bottom constraints
应该来自view
而不是来自bottom layout guide
或safe area
(特定于xcode 9)并且您的距离应该为零。
默认它是用layout guides
固定的,所以用view
给它!
请参阅下面的屏幕截图以更好地理解,
要打开此对话框,请单击包含0
的字段的下拉图标!
top constraint
也可以这样做!
更新:
第二个重要的事情,
您应该使用故事板作为启动或启动画面。如果您使用的是启动图像,则将其替换为xcode 9
的新启动图像,它可以选择iphone x 的图像。
那你就再也找不到空白了!
参考下面的截图。
【讨论】:
谢谢。工作。 @Lion 这可能会删除空白,但是给出关于布局指南的约束是否正确?现在还有可以用来代替布局指南的安全区域。 我试过了,但没有用。我正在使用最新的 Xcode 9。 在界面设计器上看起来不错,但是当我在模拟器上运行应用程序时,底部仍然有空白。也许在真实设备上会没问题。 这是完美的答案,tnx。【参考方案2】:这个空白区域是您的主要视图。如果您希望您的图像视图填充整个区域,请将其以 0 空间固定到超级视图,而不是底部布局指南或安全区域。为此,请选择以 iPhone X 方式查看情节提要中的场景,并将图像视图固定如下:
当不在 iPhone X 模式下时,也可以将图像视图的底部固定到超级视图:当您通过 Ctrl 拖动固定时,当出现约束列表时按 Option 键 (alt),您将看到“底部空间到容器边距”。
【讨论】:
是的,但我使用 4" 作为我的布局而不是 iphone x 布局 为什么不能切换到以 iPhone X 的方式查看,将其固定,然后返回 4''? 无论如何,我编辑了我的答案,也可以不在 iPhone X 视图中使用“选项”键。 没问题。如果您没有选择“查看为:iPhone X”,则更难将其固定到超级视图而不是安全区域,所以这是一个小提示:) 如果是正确答案,请标记为正确。【参考方案3】:以上两个答案都不适合我。仅设置
scrollView.contentInsetAdjustmentBehavior = .never
我的 scrollView 中有一个 stackView,stackView 中的元素有固定大小,所以我不需要插入调整,这很有效。
归功于How to get rid of safeAreaInsets on UIScrollview (ios 11, iPhoneX)
【讨论】:
【参考方案4】:对我来说这很有效:
1) 选择要设置约束的图像
2) 转到右侧面板中的属性检查器
3) 选择Scale to Fill
为Content Mode
【讨论】:
以上是关于在 iPhone X 屏幕底部获得空白(Xcode 9)的主要内容,如果未能解决你的问题,请参考以下文章
iPhone模拟器中的白色空白屏幕和加载到iPhone时的黑色空白屏幕
使用 Xamarin.Forms 应用程序填充 iPhone X 屏幕