【发布时间】:2016-03-17 12:18:20
【问题描述】:
这个问题和这个类似: Autolayout and Device Orientation
但从未调用过updateViewConstraints(因为在旋转时不会调用上述方法中的任何内容,在 iOS 9.1 模拟器上进行了测试)。一般来说,这个主题似乎没有包含正确答案或答案太旧。
我不能使用大小类,因为该项目还应该支持 iOS 7,它支持大小类,但有很大的限制。
看来我需要清除并重新创建每个旋转事件的所有约束:
1)哪种方法应该重新创建约束?
2)如何重新创建它们?也许我错误地删除了它们:
for (UIView *v in self.view.subviews)
{
v.translatesAutoresizingMaskIntoConstraints = NO;
}
for (UIView *v in self.view.subviews)
{
[v removeConstraints:v.constraints];
[self.view removeConstraints:v.constraints];
}
[self.view removeConstraints:self.view.constraints];
或者你能建议一个更好的方法来解决这个问题吗?
【问题讨论】:
-
你是如何创建它们的?正确的方法是要么修改某些约束,要么完全删除一些(或全部)并重新创建它们
标签: ios ios7 uiview autolayout constraints