在iOS 8下测试我的一个应用程序时,我注意到一些小的图形故障:某些UIViews元素放置在不合适的位置,另一些元素的尺寸不合适。
第一步,我使用 Storyboard ,自动布局和约束。然后,我使用updateViewConstraints
以编程方式调整约束以使其完全适合设备的屏幕尺寸。
完美在iOS 7上,但在iOS8上有一些故障,如下图所示:
./Users/dominiquevial/Documents/Informatique/Dev/Novae Marathon/_log/captures/iOS8-iPhone 6/pause.png
经过调查,我发现了问题:未调用updateViewConstraints
。我不明白为什么,也许是由于一些优化...
解决这个问题很容易:
viewWillLayoutSubviews
代替updateViewConstraints
setNeedsUpdateConstraints
中添加对viewWillAppear
的调用最好的方法是哪一种?
最佳答案
取决于用户是否可以在 View 出现后使 View 进入无效状态,如果是,则是第一个选项。如果不可能,请第二个。
您的应用程序要做的工作越少,效果越好。
关于objective-c - iOS 8中updateViewConstraints的行为更改,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25948001/