我有一个UILabel可以有可变数量的行,因此有高度。我想将这个标签固定在我的视图的底部,如下所示:
如果文本强制标签展开,我希望标签从视图底部保持相同的高度(大约显示一行文本),但允许标签向下扩展(它在滚动视图中)。我当然可以将UILabel固定在屏幕的顶部,但是根据屏幕尺寸的不同会产生不同的结果。我怎样才能达到这个效果?是否可以使用IB或我是否必须以编程方式执行此操作?
答案 0 :(得分:2)
您可以将标签固定到顶部(将滚动的内容视图的顶部),然后创建并插入将标签固定到顶部的约束(或者只是以编程方式创建它以获得参考)
获得引用后,只需将约束的常量设置为viewDidLoad中屏幕的高度。
constraint.constant = UIScreen.mainScreen.bounds.height - heightFromBottom
答案 1 :(得分:0)
我使用以下步骤实现了这一目标:
进行滚动视图并向超级视图添加约束(顶部,底部,尾部,前导)= 0。
在Scroll中添加UIView并将约束(top,bottom,trailing,leading)= 0添加到滚动视图。
设置UIView的高度和宽度约束等于Superview(即主视图,self.view)。
选择UIView的高度约束,并将其优先级设置为750
。
将标签添加到UIView的底部,并将其约束(bottom,top,trailing和leading)设置为UIView。
设置标签greater than equal to
的高度。 (你已经完成了这个,虽然我们不需要这个)。
最后一步:选择标签的顶部约束并将其优先级设置为250
。