ios - 为什么约束更喜欢调整一个堆栈的大小而不是另一个,你如何改变这种偏好?(xCode)
问题描述
我正在尝试将 xCode 中的约束用于自动布局,但我遇到了问题。此处显示的是应用程序的当前布局: Current Layout。我有两个堆栈,一个在顶部,一个在底部。我已将顶部堆栈的位置限制为粘贴到顶部、左侧和右侧的安全区域,并将底部堆栈的位置限制为粘贴到底部、左侧和右侧的安全区域。我现在想将顶部堆栈限制为等于底部堆栈上方的一些小间距,必要时仅拉伸顶部堆栈,底部堆栈保持完全静止。相反,我得到了相反的结果,底部堆栈冲上去遇到顶部堆栈. xCode 如何选择让底部堆栈拉伸,而不是顶部,我该如何解决这个问题?
这是一个显示我遇到的问题的 gif。请注意,我已将底部堆栈设置为在底部分布,因此它最初似乎没有拉伸,但一旦我从底部切换到填充,您很快就会看到问题:约束问题 Gif。
谢谢。
解决方案
您正在寻找的自动布局方面是 contentHuggingPriority 和 contentCompressionResistancePriority。这些决定了哪些视图更有可能拉伸或压缩。
将下层栈的垂直 contentHuggingPriority 增加到大于上层栈的垂直 contentHuggingPriority,那么自动布局系统就会使上层栈拉伸。
推荐阅读
- r - 单空间pander表
- mongodb - Graphql:“消息”:“ID不能代表值:5a72240cf31713598588b70f”
- visibility - P2P 网络中的匿名可见性检查
- c++ - std::shared_ptr 控制块中的虚函数
- git - 在 2 个离线 git 存储库之间复制文件
- amazon-web-services - SimpleSAMLphp 缺少一些配置。什么不见了?
- r - 外部返回多个错误?
- sql - SQL Server 中等效的 Postgresql 过滤子句
- html - 响应式视频调整 html/php 大小
- javascript - Bokeh - 如何在 JS 回调中更改字形属性?