У меня есть parentViewController
и содержит Контейнер с customViewController
с autoresizing
масками (гибкая ширина и высота). Ширина контейнера составляет ~ 80% от parentViewController
. При повороте устройства viewWillTransitionToSize:withTransitionCoordinator:
вызывается, но с «неправильным» размером. Я получаю parentsViewController
вид размера.Autoresizingmask, viewWillTransitionToSize и вращение
Вот часть 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
при использовании маски автоматического изменения?