Анимировать изменение размера при вращении без авторазмера - PullRequest
1 голос
/ 04 ноября 2010

Если я установлю маску AutoResize своего вида, то при повороте устройства они изменят размер вместе с основным окном.

Есть ли способ получить такую ​​же плавную производительность, используя мою собственную анимацию и без авторазмера?

1 Ответ

2 голосов
/ 04 ноября 2010

Да, вы, безусловно, можете использовать анимацию UIView для перемещения элементов.

Кроме того, обычная техника - скрыть интерфейс как часть

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration

, перерисовать его и показать какчасть

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation

Вот пример:

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration {
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.3f];
    self.myTable.hidden = YES;
    ...
    [UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
    [UIView commitAnimations];
}

- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation {
    [self redrawInterface];
    [UIView beginAnimations:nil context:NULL];
    [UIView setAnimationDuration:0.3f];
    self.myTable.hidden = NO;
    ... 
    [UIView setAnimationCurve:UIViewAnimationCurveEaseOut];
    [UIView commitAnimations];
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...