ios - 自动布局视觉格式语言
问题描述
我正在使用这种视觉格式布局"V:[v0]-16-|"
:
self.view.addConstraintsWithFormat("V:[v0]-16-|", views: imageView)
辅助方法如下:
func addConstraintsWithFormat(_ format: String, views: UIView...) {
var viewsDictionary = [String: UIView]()
for (index, view) in views.enumerated() {
let key = "v\(index)"
view.translatesAutoresizingMaskIntoConstraints = false
viewsDictionary[key] = view
}
addConstraints(NSLayoutConstraint.constraints(withVisualFormat: format, options: NSLayoutConstraint.FormatOptions(), metrics: nil, views: viewsDictionary))
}
但实际上我想要的是“V:[v0]+16+|”之类的东西,我希望正确的约束超出UIScreen
. 我怎样才能做到这一点?
解决方案
您可以使用负边距将视图定位在父级边缘之外。只需将常量放在括号中,如下所示:
self.view.addConstraintsWithFormat("V:[v0]-(-16)-|", views: imageView)
推荐阅读
- css - 使用 flexbox 占用比需要更多空间的文本
- spring-boot - 在 SpringBoot 2.4.3 中使用 Feign 和 Oauth2 时不推荐使用的方法
- php - 如何将我的 WooCommerce 购物车费用调整为仅适用于特定金额
- json - Kibana - 使用脚本语言解析/聚合总值
- php - PHP 评估代码在本地范围内引发“无法重新声明函数”错误
- c# - Migradoc:在页面末尾的一定距离内添加分页符
- flutter - Flutter pod 文件冲突修复
- c# - 将 json 反序列化到我的 C# 对象中会出错
- javascript - 服务器以“application/octet-stream”的非 JavaScript MIME 类型进行响应 对每个 HTML 的模块脚本强制执行严格的 MIME 类型检查
- python - 如何从 selenium 的 span 元素中获取文本?