在这里看一眼...... https://stackoverflow.com/a/34736594/294884
在iOS中,在故事板的Inspector中放置兄弟视图的顺序当然会成为他们的z顺序。我很惊讶地发现这个 似乎不适用于 任何此类容器视图的视图。
要测试,只需制作一个包含几个兄弟视图的场景;其中几个是容器视图。跑。在容器视图控制器的类中更改无辜的东西(例如,添加ViewDidLoad,约束或print语句),然后重试。容器视图视图随机移动到顶部。
我发现唯一的解决方法是:在viewWillAppear中手动将它们按顺序放置,这是坚果。
1)可能是我刚搞砸了一些东西 - 也许有一个设置(“尊重故事板顺序 - 即使是容器视图!”)
2)我一直在试图弄清楚如何“自动化”变通方法修复工具。您需要在故事板中加载时阅读所有视图的顺序吗?然后在viewWillAppear时间“修复”它。棘手。
3)也许有一些技巧..在prepareForSegue说? ..强迫他们处于正确的Z顺序,就像任何观点一样!??我发现了一个荒谬的解决办法。
假设您有一段包含10个兄弟视图的故事板,并说其中4个是容器视图。 (所以,它实际上将不起作用 - 如此处所述。)
事实上,即使是那四个视图也只是(毫无意义的)普通UIView,它们是容器视图的持有者。吸!
答案 0 :(得分:2)
那很奇怪。
如果您将每个容器视图放在普通UIView
内,并且所有容器视图的边缘都固定在普通UIView
上,该怎么办?我打赌你5块钱修复了它。