swift - 如何在 swift 4 中锚定到 navigationController

标签 swift xcode navigation uinavigationcontroller uinavigationbar

我创建了一个带有上部按钮项的导航 Controller ,因此现在我的屏幕顶部有一个包含“注销”按钮的导航栏:

navigationItem.leftBarButtonItem = UIBarButtonItem(title: "logout", style: .plain, target: self, action: #selector(handleLogout))

我希望能够将代码中的其他对象锚定到该导航栏的底部。例如,我想添加一个搜索栏,topAnchor 是包含我的“注销”按钮的导航字段的底部

最佳答案

克罗马内利是正确的。您无法锚定到上方 UINavigation 项目的底部。我发现的唯一修复是上部导航栏的底部始终(无论 iPhone 版本如何)距 View 内置安全 View 的顶部为 -45 度。可以通过执行以下操作来访问它:

item.topAnchor.constraints(equalTo: view.safeAreaLayoutGuide.topAnchor, 常量: -45).isActive = true

这与将项目锚定到上部导航栏的底部相同。

关于swift - 如何在 swift 4 中锚定到 navigationController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56607909/

相关文章:

json - 解释 JSON 结构时出现问题 | swift

ios - 防止触摸从 UIControl 传递到 ParentView

iphone - 如何在 XCode 5 中添加 57x57 图标

android - 在平面图图像上显示路线

css - 改变 WordPress 主题导航栏定位

css - 将导航菜单对齐到中心

swift - 访问 PFObject nsmutablearray 时 EXC__BAD_ACCESS 的 Xcode 6 beta 4 错误

ios - 如何在 Parse 中使用重复的用户名检查注册

ios - node ios socket.io SSL 适用于 xcode 调试但不适用于 ipa 安装

xcode 10.2 和 ionic 3 构建错误 : duplicate symbols for architecture x86_64