使用 AutoLayout 调整框架大小
Posted
技术标签:
【中文标题】使用 AutoLayout 调整框架大小【英文标题】:Frame Resizing using AutoLayout 【发布时间】:2015-12-16 13:39:47 【问题描述】:我有一个UIView
,里面有一个UIButton
。我正在使用自动布局。现在我想降低UIView
的高度。我该怎么做?在降低 UIView
的高度时,视图内的 UIButton
也应该同时向上移动。如何使用自动布局来做到这一点?
【问题讨论】:
视图内的按钮...... 您需要在更改约束后调用 layoutIfneeded !!!查看此答案以获取更多信息:***.com/questions/20609206/… 【参考方案1】:您可以为视图的高度限制创建 IBOutlet,您可以更改它的值。只需检查如何创建。
现在使用下面的代码来设置你的 UIVIew 的高度
heightConstraintOfView.constant = DYNAMIC_HEIGHT;
【讨论】:
需要更多帮助然后告诉我。 所以在将视图高度设置为动态后,我可以更改框架(view.frame.height)。这个视图中的按钮会自动重新框起来吗? 不要忘记在你改变约束后做 layoutIfneeded !!! @Anilsolanki @MainakChoudhury 如果授权正确 - 是的 你不能用 view.frame.height 改变视图的框架。它不会起作用。但是如果你按照我的建议通过约束编码来改变高度,那么你不应该修复 UIbutton 的高度。让它没有固定高度的自动布局。以上是关于使用 AutoLayout 调整框架大小的主要内容,如果未能解决你的问题,请参考以下文章
使用 AutoLayout 调整 UICollectionViewCell 及其内容的大小
使用 AutoLayout 调整 UIStackView 的大小
如何使用 Autolayout 调整 UITableView 的大小?
如何防止 UIImageView 使用 Autolayout 调整大小