Анимация ориентации iPad чрезвычайно вялая при отображении больших веб-просмотров - PullRequest
1 голос
/ 15 июля 2010

Когда я меняю ориентацию при относительно пустом веб-просмотре, экран вращается без проблем. Как только веб-просмотр особенно наполнен контентом и становится прокручиваемым, анимация вращения становится очень медленной. Строка состояния будет вращаться первой, а вид будет следовать через 3-5 секунд.

В настоящее время в willRotateToInterfaceOrientation я просто изменяю размер фрейма веб-просмотра.

Кто-нибудь из гуру имеет какое-то понимание? Есть ли способ заставить вид вращаться раньше, или обрабатывать вращение самостоятельно? Как я должен идти об этом? Я думал об отображении экрана загрузки, когда это происходит, но это выглядит довольно глупо, особенно когда пользователи будут вращать небольшие веб-просмотры.

Спасибо!

Ответы [ 2 ]

1 голос
/ 09 июня 2011

Мой совет - убивать анимацию во время вращения. Это освободит устройство от долгих размышлений.Отключение поворота можно сделать так:

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
    [UIView setAnimationsEnabled:YES];
}


- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
    [UIView setAnimationsEnabled:NO];
  /* Your original orientation booleans*/
}

Поместите его в свой UIViewController и все должно быть хорошо.Тот же метод можно применить к любой нежелательной анимации в iOS.

Желаем удачи в вашем проекте.

1 голос
/ 15 июля 2010

без повторного изобретения колеса: нет.Вращение в сафари также занимает много времени, поэтому вряд ли возможна какая-либо оптимизация.В любом случае я ничего не нашел (и довольно долго возился с этой проблемой.)удачи.

...