我有parentViewController
,它包含customViewController
带有autoresizing
掩码的容器(灵活的宽度和高度)。容器的宽度约为parentViewController
视图的 80%。当我旋转设备viewWillTransitionToSize:withTransitionCoordinator:
被调用但尺寸“错误”时。我得到parentsViewController
视图大小。
这是一部分customViewController
-(void)viewWillTransitionToSize:(CGSize)size withTransitionCoordinator:(id<UIViewControllerTransitionCoordinator>)coordinator
{
NSLog(@"viewWillTransitionToSize %@", NSStringFromCGSize(size));
[super viewWillTransitionToSize:size withTransitionCoordinator:coordinator];
[self resizeViewToWidth:size.width];
[self performSelector:@selector(didRotate) withObject:nil afterDelay:1.0];
}
-(void)didRotate
{
NSLog(@"didRotate %@", NSStringFromCGSize(self.view.frame.size));
}
//it creates this log
//viewWillTransitionToSize {667, 331}
//didRotate {617, 311} //this is correct size after applying autoresizing masks
当我看到至少两种不同的尺寸时,为什么只调用一次?如果自动调整蒙版可以为我做,我不想计算视图大小。
如何让先应用自动调整大小的蒙版,然后在应用后获取大小?
viewWillTransitionToSize
使用自动调整大小的蒙版时正确的使用方法是什么?