iOS переходы между видами с использованием анимационных блоков - PullRequest
0 голосов
/ 21 февраля 2012

Я пытаюсь анимировать между 2 подпредставлениями.На данный момент я пробовал разные варианты, каждый со своими побочными эффектами.

Приложение представляет собой небольшую игру с подвидом навыков, подвидом инвентаря и подвидом статуса.Я хочу анимировать между навыками и представлениями инвентаря, оставляя подвид состояния в нижней части основного представления.Ниже я перечислил свои различные попытки и побочные эффекты от них.

  • Animate от `animateWithDuration

    • [UIView animateWithDuration:0.3 delay:0.3 options:UIViewAnimationOptionTransitionFlipFromRight | UIViewAnimationCurveEaseIn animations:^{ skillView.hidden = NO; inventoryView.hidden = YES; }completion:NULL];
    • Нетпереходы, кажется, имеют место.Представления просто появляются.
  • Анимация из transitionFromView

    • [UIView transitionFromView:inventoryView toView:skillView duration:0.5 options:UIViewAnimationOptionTransitionFlipFromRight completion:^(BOOL finished){ inventoryView.hidden = YES; }];
    • Переход выполнен отлично,но представление статуса переходит с другими представлениями.Почти как если бы основной вид анимировался со всем.

Представления загружаются в основной вид, просто скрытый в фоновом режиме, и они просто всплывают в главном окне.Тем не менее, я хотел бы анимировать между представлениями для лучшего потока приложений.Я видел, как люди удаляли и добавляли в основной вид, но я надеюсь, что установка подпредставлений как видимых / невидимых должна иметь тот же эффект.

Любой совет очень ценится.

1 Ответ

1 голос
/ 22 февраля 2012

Core Animation не знает, как анимировать эти представления, кроме их прямого предка (родителя).

Разбейте их на один контейнер.

Например:

Инстад этого:

Parent
 - Other View
 - View A
 - View B
 - Other View

Иметь это:

Parent
 - Other View
 - Container
   - View A
   - View B
 - Other View

См. Комментарии к вопросу для более подробной информации.

...