Анимирайте UIView елементи между прехода на 2 UIViewControllers

Имам 2 UIViewControllers с подобни 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, докато натискам между View Controllers

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
Този въпрос беше преди ios 7. Благодаря!. ще приема. - person Avner Barr; 30.07.2014