Я пытаюсь сделать простую анимацию. У меня есть UIViewController, который имеет два представления, которые являются подпредставлениями основного представления. (В Интерфейсном Разработчике я создал два объекта UIView, оба имеют свое собственное подпредставление представления, которое автоматически создается в .xib из шаблона UIViewController). У меня есть второй вид, скрытый в IB. Контроллер представления представлен модально как UIModalPresentationFormSheet. Когда кнопка нажата, я хочу скрыть первый вид, перейти ко второму виду. Я попробовал следующий пример Apple здесь: http://developer.apple.com/library/ios/#samplecode/ViewTransitions/Listings/Classes_ViewTransitionsAppDelegate_m.html#//apple_ref/doc/uid/DTS40007411-Classes_ViewTransitionsAppDelegate_m-DontLinkElementID_4
Вот мой код при нажатии кнопки:
CATransition *transition = [CATransition animation];
transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
transition.duration = 0.75;
transition.type = kCATransitionReveal;
[self.view.layer addAnimation:transition forKey:nil];
self.FirstScreen.hidden = YES;
self.SecondScreen.hidden = NO;
К сожалению, я не получаю никакой анимации. Я получаю скрытие / отображение, которое хочу, но без анимации перехода. Итак, мой первый вопрос: что я делаю не так в коде?
Дополнительный вопрос: можно ли сделать что-то подобное с блоками? Я сделал несколько простых анимаций в блоках, таких как изменение альфа с помощью
[UIView animationWithDuration... ]
Но не был уверен, как сделать вышеуказанный переход с блоками.