如何使用约束设置自身视图高度?
问题描述:
所以我一直在移动代码的一部分使用约束,而不是使用框架的旧方法。这是我需要移动的当前代码。当用户按下按钮时隐藏\取消隐藏下方的tabbar,我需要更改视图的高度。如何使用约束设置自身视图高度?
CGRect newFrame = self.view.frame;
newFrame.size.height += 44
self.view.frame = newFrame;
self.view是UIViewController。我想设置图片中显示的视图的高度。没有办法给它添加一个高度约束(你可以很容易地将它设置在子视图上,我不想要)
我没有看到使用约束设置自身视图高度的方法。
感谢 arpit
答
这短短的tutorial将是对你有帮助。
可以使用VFL做到这一点(我个人比较喜欢,见上面的链接),或者通过这种代码:
[yourView addConstraint:[NSLayoutConstraint constraintWithItem:yourView
attribute:NSLayoutAttributeHeight
relatedBy:0
toItem:nil
attribute:NSLayoutAttributeNotAnAttribute
multiplier:1
constant:requiredHeight]];
这段代码将在高度添加约束由requiredHeight
指定yourView
。在开始编码之前,请查看intrinsicContentSize和updateConstraints方法。
设置约束时,请记得首先设置(对于视图您将设置约束)translatesAutoresizingMaskIntoConstraints
标志为NO(默认设置为YES)。同时阅读this应该对这个话题有所了解。