Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 如何在iPhoneX中扩展主指示器下方的底视图颜色?_Ios_Iphone_Iphone X_Safearealayoutguide - Fatal编程技术网

Ios 如何在iPhoneX中扩展主指示器下方的底视图颜色?

Ios 如何在iPhoneX中扩展主指示器下方的底视图颜色?,ios,iphone,iphone-x,safearealayoutguide,Ios,Iphone,Iphone X,Safearealayoutguide,请检查所附图片。Viewcontroller视图的背景颜色为蓝色。如您所见,该颜色延伸至状态栏下方和主指示器下方。底部有一个白色视图,它是一个按钮。此处白色视图位于安全布局指南内 我希望相同的白色延伸到主指示器下方,而不添加任何附加视图(仅适用于iPhone-X) 如何做到这一点 您需要使用超级视图设置/附加白色视图的底部约束 按照以下步骤操作,请参见: 检查视图的底部/底部对齐约束。它可能与安全区域的底部锚/约束相连 (要编辑它)双击底部约束,将显示以下选项 现在将选择(勾号)从安全

请检查所附图片。Viewcontroller视图的背景颜色为蓝色。如您所见,该颜色延伸至状态栏下方和主指示器下方。底部有一个白色视图,它是一个按钮。此处白色视图位于安全布局指南内

我希望相同的白色延伸到主指示器下方,而不添加任何附加视图(仅适用于iPhone-X)

如何做到这一点


您需要使用超级视图设置/附加白色视图的底部约束

按照以下步骤操作,请参见:

  • 检查视图的底部/底部对齐约束。它可能与安全区域的底部锚/约束相连


  • (要编辑它)双击底部约束,将显示以下选项
  • 现在将选择(勾号)从安全区域更改为超级视图


  • 如果不是,则将常数设置为
    0


  • 这是您可能想要的结果

克鲁纳尔的答案在大多数情况下都有效。但是如果没有设置顶部约束,白色视图将位于主指示器线下

在我的设计中,白色视图仅具有前导、尾随、底部和高度约束。我不得不将另一个视图作为子视图添加到白色视图中(该视图将从现在起充当白色视图),为外部白色视图启用安全区域布局指南,并设置边距/安全区域的约束,以便使此功能适用于包括X在内的所有设备

注意:应该为内部视图/按钮(在我的情况下)设置高度约束,而不是外部视图。在iPhoneX设备中,Autolayout将正确地为您完成工作

这就是iphone X和其他手机的外观。 iPhone SE:

iPhone X:


希望这能帮助别人。:)

在我的例子中,我希望底部的视图高度为49。因此,将顶部设置为底部布局指南上方49

然后将“视图底部”设置为“超级视图底部”


现在,在iPhone X上,视图延伸到手机底部,在安全区域上方的高度仍然为49,而在其他设备上,视图的高度为49。

谢谢。这将起作用。但是如果没有设置顶部约束,白色视图将位于主指示器线下。在我的设计中,白色视图仅具有前导、尾随、底部和高度约束。我必须将另一个视图作为子视图添加到白色视图中,并对边距设置约束,以便使此功能适用于包括X在内的所有设备。确保还可以查看接受的答案,以获得更通用的解决方案。它仅支持>iOS 9。@abhi1992,是的,但我的应用程序也支持iOS 8。因此,当您使用安全区域时,iOS 8和iOS 11.2不可能同时使用。了解兄弟。。。它很简单视图的约束是什么?您还没有指定任何关于它的内容。您可以检查附加的第一个图像吗?我想在Xamarin.Forms中实现它。有什么建议吗?