标签: objective-c cocoa resize autolayout nslayoutconstraint
我正在准备一个自定义视图,其外观类似于屏幕截图中显示的示例。我在运行时添加所有用户界面组件(标签,文本字段,单选按钮,..)。要定位元素,我使用Autolayout约束。到目前为止,这部分工作正常。
元素的数量因环境而异。我想知道如何使用Autolayout约束动态调整父视图(很可能是视图的高度)。因此,视图约束应考虑为当前附加的子视图定义的高度和边距。
答案 0 :(得分:26)
我已通过以下设置完成此操作:
自动布局系统通过调整容器大小以适应其内容来满足这些约束。
当然,您需要在更改内容时动态设置约束。
答案 1 :(得分:2)
如果你使用的是NSStackView,那么请确保你没有为它的高度和宽度设置约束,并确保所有边都被锚定。
另外,请确保将内容Hugging属性设置为1000。