【问题标题】:Positioning a view under navigation bar iOS 11 safe area在导航栏iOS 11安全区域下定位视图
【发布时间】:2017-12-30 13:48:39
【问题描述】:

我一直在尝试将带有 UI 元素的视图定位在导航栏下方 - 这意味着位于安全区域的顶部边缘。这在导航栏不存在时有效,但是一旦我添加它,安全区域的高度就会降低,并且安全区域顶部边缘的视图约束会移动到栏的底部。

我的问题是:如何以编程方式移动视图,使其与导航栏重叠,并位于状态栏下方,就像没有导航栏一样?

【问题讨论】:

  • 你试过什么?一切如何设置?需要更多信息来帮助您。
  • 您的问题令人困惑。它在导航栏不存在时有效,但当导航栏出现时,视图将附加到栏的底部(这是您想要的,不是吗?)?
  • 这个问题简单明了,之前的2位评论者没有看。这家伙想知道如何在 iOS 11 的导航栏下显示 edgesForExtendedLayout 不再起作用的视图。

标签: swift swift4


【解决方案1】:

首先将您的视图放在您想要的位置,然后您可以为视图约束设置动画。只需将您的约束拖放到您的 ViewController 中。 此示例适用于向上移动的视图:

约束出口:

@IBOutlet weak var logoConstraint: NSLayoutConstraint!

那么当视图出现时:

self.logoConstraint.constant = -180

你也可以看这里:

https://savvyapps.com/blog/advanced-ios-animations-with-auto-layout

【讨论】:

    【解决方案2】:

    您可以使用“超级视图”约束。顶部超级视图约束是屏幕顶部(状态栏开始的位置)(在我的屏幕截图中是“视图”)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-15
      • 2018-02-27
      • 1970-01-01
      • 2018-03-03
      • 1970-01-01
      相关资源
      最近更新 更多