想象一下,你有四个左右的视图,全宽100,不同的高度。你有一个包装器视图W,它可以保存它们。
A |
B | W
C |
D |
小视图的高度可以改变。那时你想让他们全部移动,漂浮,适当地调整W。
现在,我正准备编写几行代码来完成此任务。
所以..(1)你有W找到所有的子视图并按顺序从上到下列出。然后(2)每次有变化时,你(3)重新定位每个ABCD。每一个的位置是它上面项目高度的总和,(4)将W调整为所有高度的总和。
现在一切都很好但是 - 白痴重新发明了轮子!
我错过了iOS中显而易见的东西吗?是不是每个人都使用这个包来做这件事?还是内置的东西?情况如何?
(请注意,当然令人沮丧的是,对于我们的Android朋友来说,这是内置的!当然,任何web-html系统都会自动执行此操作。)
这里适用于iOS视图的正确工程解决方案是什么?据记载,这只是iOS7 +,如果它有所作为,则不需要覆盖任何老式的东西。干杯
答案 0 :(得分:1)
(1)你有W找到所有子视图并按从上到下的顺序列出它们 到底。然后(2)每次有变化时,你都会(3)重新定位 每个ABCD。每个人的位置是高度的总和 它上面的项目,以及(4)将W调整为所有高度的总和。
您可以在Interface Builder中使用约束来完成整个过程,无需代码。这样做:
你最终会看到这样的东西:
Xcode中的约束编辑器并不完全直观,但是一旦你理解了你可以做什么和不能用IB中的约束以及当你需要使用代码时它 易于使用设置约束。