TL; DR在iOS 13上 some 应用程序的布局已损坏(bellow OS很好)。当我回到背景并返回时,它是固定的...除非uiuserinterfacestyle设置为Light(!)
我正在处理去年未使用过的某种老版本应用程序。我正在使用最新的Xcode(11.2)和Swift4。当然,当您使用新的Xcode版本时,我期望遇到一些编译问题,但是一旦修复这些问题,我就会意识到:
该应用在iOS 13上的布局不再正确,至少是该应用的某些视图。不过,在AppStore上的布局不是问题,因此我猜想它与iOS 13 + Xcode 11有关(我在这里猜测,我不知道用于构建当前应用程序的是哪个Xcode版本)。
另一重要的事情是,当应用程序进入后台时,突然间,该应用程序能够更新其约束,并且在返回布局后得以修复。有一个例外,如果我在应用程序的info.plist上将uiuserinterfacestyle启用为Light,则布局永远不会被自己固定。
另一种奇怪的情况是,当您窥视并弹出视图时,它会正确布局(在预览中,如果您使用该手势完成输入,则在视图上也是如此)。如果在查看和弹出后您不输入并且以后又正常输入,则仍无法解决。