Я получил следующий код в ВК в старом проекте (без раскадровки, чистый код):
- (void)viewDidLoad {
[super viewDidLoad];
self.mapView = [[MKMapView alloc] initWithFrame:CGRectInset(self.view.frame, 10, 10) ];
[self.view addSubview:self.mapView];
self.view.backgroundColor = [UIColor redColor];
self.mapView.autoresizingMask = UIViewAutoresizingFlexibleRightMargin | UIViewAutoresizingFlexibleBottomMargin | UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
self.view.translatesAutoresizingMaskIntoConstraints = NO; // <--- this line
}
Если я прокомментирую последнюю строку, поворот из книжной в альбомную или наоборот составляет около 3 секунд под ios8 !! Кроме того, иногда в случайное время появляются ошибки Невозможно выделить хранилище буфера рендеринга!.
Если я не прокомментирую это, это произойдет почти мгновенно (0,7 секунды). Кажется, это связано только с картами, другие виды / VC прекрасно вращаются.
Под ios7 вращение происходит быстро в любом случае, независимо от того, прокомментирована эта строка или нет.
Почему ? И почему затронут только вид карты?
Редактировать: очевидно, что маска автоматического изменения размера неверна. Если в viewDidLoad
поставить ему значение none и вручную изменить кадр в willRotate, работает быстро.