我有一个UIView,它有3个子视图:标题,中心面板和页脚。页眉和页脚都是固定的高度,我可以设置它们的自动调整属性,使它们的行为符合我的要求:标题保持锚定在顶部并伸展以适应屏幕(纵向或横向),而页脚保持不变固定在底部,并随着屏幕延伸。
我遇到的问题是中心面板。我能够将它锚定在标题下面,但我找不到任何方法来设置此中心面板的自动调整属性,以便它自己伸展,使其底部位于页脚的顶部。我设置的所有内容似乎都将其拉伸到主UIView的底部(因此它在页脚下方拉伸,我不想要)。
我不能通过覆盖layoutSubviews在代码中执行此操作(我认为,除非有办法),因为我正在设置此外部视图的动画,我需要使用动画调整子视图的大小。有没有办法在IB中做到这一点?
答案 0 :(得分:5)
header.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleBottomMargin;
content.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
footer.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleTopMargin;
部首:
内容:
页脚:
固定边距(参见下面的注释截图)将保持视图与超视图边界的顶部和底部之间的距离不变。这是你想要的,因为你有一个固定的高度页眉和页脚。
这些东西在代码中绝对可行。您无法在Interface Builder中执行任何操作,也无法在代码中执行任何操作。