我正在开发一个支持纵向和横向模式的应用程序.我正在使用自动布局来安排我的观点.因为我一直在阅读很多帖子,并且我已经意识到开发人员通常使用以下方法之一.
1.第一种方法:
实现UIViewController:updateConstraints方法并根据设备方向更新约束.
2.第二种方法:
实现UIViewController:viewWillLayoutSubviews方法并根据设备方向更新约束.
解决方法
我会使用这个UIViewController的方法:
– (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration;
在旋转时调用,并从那里调用-setNeedsUpdateConstraints.
如果您需要进行额外的计算或管理违规行为
- (void)updateViewConstraints { [super updateViewConstraints]; // do calculations if needed,like set constants }