令人难以置信的是,容器视图视图不遵守情节提要视图顺序,修复了吗?
Incredibly, storyboard view order is not respected for container view views, fix?
看这里...
在 iOS 中,在 Storyboard 的 Inspector 中放置同级视图的顺序当然成为它们的 z 顺序。
我很惊讶地得知此 似乎不适用于 任何此类容器视图。
要进行测试,只需制作一个包含几个兄弟视图的场景即可;其中一些是容器视图。 运行。在容器视图控制器的 class 中更改一些无害的内容(例如,添加 ViewDidLoad、约束或打印语句),然后重试。容器视图视图随机移动到顶部。
我发现唯一的解决方法是:在 viewWillAppear 中手动将它们按顺序排列,这太疯狂了。
1) 是不是我搞砸了 - 也许有一个设置 ("respect storyboard order - even for container views!")
2) 我一直在绞尽脑汁想弄清楚如何 "automate" 解决方法。您需要在故事板加载时读取所有视图的顺序吗?然后 "fix" 它在 viewWillAppear 时间。棘手。
3) 在 prepareForSegue 中可能有一些技巧 .. 说? .. 强制它们按照正确的 Z 顺序排列,就像任何视图一样!??
修复...
我刚刚想到一个荒谬的解决方法。
假设您的故事板有 10 个兄弟视图,其中 4 个是容器视图。 (所以,它实际上 不起作用 - 如此处所述。)
事实上,即使这四个视图也只是(毫无意义的)普通 UIView,它们是容器视图的持有者。糟透了!
真奇怪。
如果将每个容器视图放在普通 UIView
中,容器视图的所有边缘固定到普通 UIView
会怎样?我打赌 5 块钱就能修好它。
看这里...
在 iOS 中,在 Storyboard 的 Inspector 中放置同级视图的顺序当然成为它们的 z 顺序。
我很惊讶地得知此 似乎不适用于 任何此类容器视图。
要进行测试,只需制作一个包含几个兄弟视图的场景即可;其中一些是容器视图。 运行。在容器视图控制器的 class 中更改一些无害的内容(例如,添加 ViewDidLoad、约束或打印语句),然后重试。容器视图视图随机移动到顶部。
我发现唯一的解决方法是:在 viewWillAppear 中手动将它们按顺序排列,这太疯狂了。
1) 是不是我搞砸了 - 也许有一个设置 ("respect storyboard order - even for container views!")
2) 我一直在绞尽脑汁想弄清楚如何 "automate" 解决方法。您需要在故事板加载时读取所有视图的顺序吗?然后 "fix" 它在 viewWillAppear 时间。棘手。
3) 在 prepareForSegue 中可能有一些技巧 .. 说? .. 强制它们按照正确的 Z 顺序排列,就像任何视图一样!??
修复...
我刚刚想到一个荒谬的解决方法。
假设您的故事板有 10 个兄弟视图,其中 4 个是容器视图。 (所以,它实际上 不起作用 - 如此处所述。)
事实上,即使这四个视图也只是(毫无意义的)普通 UIView,它们是容器视图的持有者。糟透了!
真奇怪。
如果将每个容器视图放在普通 UIView
中,容器视图的所有边缘固定到普通 UIView
会怎样?我打赌 5 块钱就能修好它。