我有一个带有4个UILabels的控制器,它通过所有的iPhones保持恒定的高度,在最后一个UILabel下面有一个带有页面控制器的UIView(在该页面控制器中有一个TableView)。
我想要的是UIView占据了他所不能承受的所有高度:
例子: 600英尺的屏幕
4UILABELS = 200高度TableView =它应该有400个高度
800高度屏幕
4UILABELS = 200高度TableView =它应该有600米高
我需要更多的一个约束来设置视图的高度,我定义的是:
发布于 2015-06-03 13:32:35
下面的约束应该为您对齐所有的东西,这样UILabels堆栈就可以垂直排列,每个堆栈的高度都是50,并延伸到边缘。无论屏幕大小如何,UIView都将占用剩余的空间。
All UILabels
引脚前缘至superview
引脚后缘到superview
将高度约束设置为50.0
UILabel 1:
将顶部边缘引脚到superview顶部
UILabel 2:
将顶部边缘引脚到UILabel 1底部
UILabel 3:
将顶部边缘引脚到UILabel 2底部
UILabel 4:
将顶部边缘引脚到UILabel 3底部
UIView
引脚前缘至superview
引脚后缘到superview
将顶部边缘引脚到UILabel 4底部
引脚底部边缘到superview
UITableView
引脚,尾随,顶部和底部到它的容器视图,这样它就填满了区域。
发布于 2015-06-03 12:43:49
我假设您是在一个故事板中创建这个UIViewController。
您应该能够将所有标签放在一个容器视图中,按照您指定的那样,在容器视图中给出200点的恒定高度。从“顶级布局指南”到所述容器视图设置一个垂直约束,可能值为0。拖动UITableView并将其放置在容器视图下面。不要给它任何关于高度的限制。将值为0的容器视图(底部)与( UITableView的顶部)视图之间的垂直间隔设置为值0,在UITableView (底部)和底部布局指南(底部)之间设置值为0的垂直间距。
因此它将是 (V:0表示垂直间距,常数0):
顶部布局指南
V:0
容器视图-高度: 200
V:0
TableView (动态高度)
V:0
底部布局指南
这应该能行。
(当然,您还需要为容器视图中的每个UILabel创建有关宽度的约束和内部约束。如果你需要帮助,请告诉我。)
https://stackoverflow.com/questions/30620286
复制相似问题