【问题标题】:How to extend bottom view colour below the home indicator in iPhone X?如何在 iPhone X 的主页指示器下方扩展底视图颜色?
【发布时间】:2017-11-09 12:05:20
【问题描述】:

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

我希望相同的白色在主页指示器下方延伸,而不为 iPhone-X 添加任何额外的视图。

如何做到这一点?

【问题讨论】:

    标签: ios iphone iphone-x safearealayoutguide


    【解决方案1】:

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

    按照以下步骤操作并查看:

    • 检查视图的底部/底部对齐约束。它可以附有底部锚/安全区域的约束。


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


    • 如果不是,请将常量设置为 0


    • 这是您可能想要的结果。

    【讨论】:

    • 谢谢。这会奏效。但是,如果您没有设置顶部约束,则白色视图将位于主指示线下方。在我的设计中,白色视图只有前导、尾随、底部和高度约束。我必须将另一个视图作为子视图添加到白色视图,并将约束设置为边距,以便让这个东西适用于包括 X 在内的所有设备。
    • 请务必查看已接受的答案,以获得更通用的解决方案。
    【解决方案2】:

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

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

    注意:应为内部视图/按钮(在我的情况下)而不是外部视图设置高度约束。自动布局将在 iphone X 设备中为您正确完成工作。

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

    iPhone X:

    希望这可以帮助某人。 :)

    【讨论】:

    • 仅支持 > iOS 9.
    • @abhi1992,是的,但是我的应用程序也支持 iOS 8。因此,当您使用安全区域时,iOS 8 和 iOS 11.2 无法同时使用。了解兄弟...它很简单
    • View 的约束是什么?你还没有具体说明它。
    • 你能看看附上的第一张图片吗?
    • 我想在 Xamarin.Forms 中实现它。有什么建议吗?
    【解决方案3】:

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

    然后将view底部设置为superview底部。

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

    【讨论】:

      猜你喜欢
      • 2018-02-21
      • 1970-01-01
      • 2018-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-06-21
      • 2019-10-04
      • 1970-01-01
      相关资源
      最近更新 更多