情况
我有UIView
一个布局约束到安全区域的底部。这是 inside a UIViewController
inside a UINavigationController
。当导航栏位于大标题和“常规”标题之间时,它可以正常工作。但是,当弹跳降低UINavigationBar
覆盖自定义视图时。
问题
如何将自定义视图的位置锁定到弹跳导航栏的底部。故事板解决方案将是最佳的,Swift 解决方案就足够了。
我有UIView
一个布局约束到安全区域的底部。这是 inside a UIViewController
inside a UINavigationController
。当导航栏位于大标题和“常规”标题之间时,它可以正常工作。但是,当弹跳降低UINavigationBar
覆盖自定义视图时。
如何将自定义视图的位置锁定到弹跳导航栏的底部。故事板解决方案将是最佳的,Swift 解决方案就足够了。
您需要menuView
添加navigationBar
let menuView = UIView()
menuView.backgroundColor = .red
menuView.translatesAutoresizingMaskIntoConstraints = false
self.navigationController?.navigationBar.addSubview(menuView)
[menuView.leadingAnchor.constraint(equalTo: (self.navigationController?.navigationBar.leadingAnchor)!),
menuView.topAnchor.constraint(equalTo: (self.navigationController?.navigationBar.bottomAnchor)!),
menuView.trailingAnchor.constraint(equalTo: (self.navigationController?.navigationBar.trailingAnchor)!),
menuView.heightAnchor.constraint(equalToConstant: 60)].forEach{ $0.isActive = true }
结果
但是你必须维护 UITableView/UICollectionView/UIScrollView & 滚动指示器的 contentInset
建议
在这种情况下使用 TableView/CollectinView 的 Section Header。