Анимация элементов UIView между переходом двух контроллеров UIViewController

У меня есть 2 UIViewController с аналогичными компонентами UIView в них. Например, первый UIViewController может иметь небольшой UIImageView, а второй UIViewController - большой UIImageView.

Использование UIView animateWithDuration:animations:

Я мог бы сделать что-то вроде

// this is the original size frame
self.imageView.frame = smallFrame;


// somewhere in the code make a big frame and animate it
UIView animateWithDuration:1 animations^ { self.imageView.frame = bigFrame; }

Но я хотел бы анимировать компонент UIView, нажимая между контроллерами представления.

firstViewController pushViewController:secondViewController; // this should animate the frame size 
// of the imageView in the first view controller to the frame size of the imageView in the second 
//view contoller 

Аналогичное поведение можно увидеть в приложении Facebook при выборе фотографии в ленте или фотоальбоме. Фон становится темным, а изображение увеличивается.

Я считаю, что это 2 отдельных контроллера представления, так что анимация во время нажатия дает ощущение увеличения и уменьшения размера кадра. Это облегчило бы повторное использование этого контроллера представления галереи.

Как этого добиться при любом взгляде?


person Avner Barr    schedule 08.09.2013    source источник


Ответы (1)


Я полагаю, вы хотели бы изучить класс UIViewControllerAnimatedTransitioning.

Вот ссылка на переходы пользовательского контроллера представления.

person Jon    schedule 30.07.2014
comment
Этот вопрос был приставкой 7. Спасибо !. Я приму. - person Avner Barr; 30.07.2014