Как Apple выполняет анимацию флэш-карт iBooks 2? - PullRequest
2 голосов
/ 18 февраля 2012

Я пытаюсь перейти с одного UIView на другой с помощью

[UIView transitionFromView:self.frontsideCardView 
                    toView:self.backsideCardView 
                  duration:kFlipCardAnimationDuration
                   options:UIViewAnimationOptionTransitionFlipFromTop
                completion:completion];

Проблема в том, что анимация становится медленной, когда я включаю CALayer тени и закругленные углы на двух видах. Поэтому я осмотрел приложения Apple, чтобы узнать, не сделали ли они что-то похожее, и обнаружил, что приложение iBooks 2 работает. Там можно выучить карточки, и если вы нажмете на карточку, она плавно перевернется. И из того, что я вижу, они также используют закругленные углы и тени.

Что я заметил, так это то, что в моей анимации во время переворачивания изображения становятся черными - в iBooks этого не происходит:

iBooks animates so smoothly! My app doesn't :(

(для примера я удалил все из вида, в противном случае он просто анимируется со скоростью 10 кадров в секунду)

Есть идеи, что Apple сделала для создания такой плавной анимации?

Ответы [ 2 ]

2 голосов
/ 28 февраля 2012

Существует пример, касающийся смахивания в Lion, который вы, вероятно, можете адаптировать для своего использования: https://developer.apple.com/library/mac/samplecode/PictureSwiper. По сути, вы фотографируете страницы до и после своих, помещаете их в слои в скрытом виде.это сверху вашего, а затем показать вид и анимировать слои во время пролистывания.После завершения сканирования вы скрываете вид и повторно создаете изображения.Весь этот процесс, вероятно, будет проще реализовать в ios, чем в osx.

2 голосов
/ 28 февраля 2012

Они используют изображения, нарисованные на простых старых видах. Самый простой и быстрый способ сделать это.

...