ios - AutoLayout - 如何绑定(bind)两个 View 并相应地更改大小

标签 ios xcode user-interface constraints

我想要一个乍看起来很简单的东西,但是我不知道如何从 IB 中把它做得很好。

我想要一些简单的东西,假设我对一个父项有两个 View (一个包含两个子项的 View 容器)。我想要的是它们每个都连接到 0 px 的垂直空间(一个到他的顶部,另一个到另一个的底部)。所以当其中一个改变他的尺寸时,另一个占据剩余尺寸,所以它们仍然会在 0 像素处相互连接。

我放了两张我想要的截图。

enter image description here enter image description here

我已经尝试了很多次,但没有像我期望的那样工作。

奇怪的是,即使我将优先级放在垂直空间上,其他约束也会优先,我只是从 XCode 收到警告,说我的垂直空间约束是错误的。

有人可以帮助我吗?我没有找到关于这种 View 管理的具体教程。 谢谢

* 编辑 *

好的,我想通了: 我终于按照建议阅读了Ray的整个教程,它对我有很大帮助(为我辩护,我之前阅读过IOS官方文档关于约束,它让我感到困惑而不是帮助我)。对我来说,难以理解的是,现在你不能按帧更改 UIView,但现在可以按约束更改。当我明白这一点时,做出改变真的很容易。

顺便说一下,我尝试了@Handsomeguy 的回复,效果非常好。

最佳答案

我认为您的一个 View 至少需要一个高度约束(IBOutlet 到您的 View Controller )...当您更改其常量值时,另一个 View 应自动更改。你可以先在storyboard上试一下,然后把逻辑写下来。但如果其中之一没有高度限制,我认为它永远不会奏效。

关于ios - AutoLayout - 如何绑定(bind)两个 View 并相应地更改大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22560962/

相关文章:

ios - 如何在ios中的COCOS2dx中实现应用内购买?

iphone - 如何在 iOS 上使用 Facebook API Graph 增加签到地点的数量

ios - 添加一个按钮以 float 在 ViewController 之上,受 Path 启发

user-interface - 如何获取新的 PayPal Express Checkout 用户界面

python - Kivy是如何做到跨平台兼容的?

ios - AWS S3 元数据 iOS

iOS 13 Blob pdf 文件的滚动问题(无法用一根手指滚动)

javascript - 找不到 React Native Config.h

ios - Xcode“iPhone模拟器”未在“音频Midi设置”>“Midi网络设置”中显示

java - 单选按钮状态始终为 'checked'