Начало работы по созданию пользовательских переходов вида - PullRequest
7 голосов
/ 30 июня 2009

Я ищу учебники по созданию пользовательских переходов вида.

В частности, переходы, включающие элементы, отличные от затрагиваемых только UIViews, такие как воспроизведение анимации поверх перехода, когда он происходит, или изменение снимка экрана с UIView, из которого выполняется переход.

Я не имею в виду реализацию базового набора переходов (слайд, затухание и т. Д.), Для которых на сайте Apple есть множество примеров. Я говорю о добавлении видео / звука / дополнительной анимации, одновременно оборачивая все это в многоразовый переход.

Я смутно знаком с некоторыми базовыми инструментами (ядро-анимация и кварц), но я ищу учебник по этому предмету без предварительного опыта.

Ответы [ 3 ]

6 голосов
/ 28 февраля 2010

Я только что собрал класс перехода для реализации собственной анимации в OpenGL ES.

Не стесняйтесь читать об этом здесь

4 голосов
/ 04 ноября 2009

Анимации CoreAnimation работают, регистрируя различия в очень специфическом подмножестве свойств UIView.Они не реагируют ни на какие пользовательские свойства и просто не выполняют более сложные переходы, чем вы уже видели в демонстрациях.Вы можете сделать снимок экрана вашего текущего вида, сохранить его в памяти в качестве текстуры, скрыть старый вид и одновременно показать вид OpenGL.Затем, используя текстуру скриншота и различные анимации сетки, вы можете визуализировать свой собственный переход (включая альфа-смешение по смятым / сложенным краям), а затем избавиться от представления OpenGL, чтобы полностью раскрыть целевой вид.Выглядит как забавный проект, и вы будете в редкой компании, чтобы выполнить его.

0 голосов
/ 30 июня 2009

Вот краткое руководство по использованию стандартных переходов UIView. http://chris -software.com / index.php / DEV-центр / вид-переходы /

Если вы хотите перейти в вид, используйте что-то вроде этого. Это работает с любым типом элемента со свойством альфа, таким как UIImageViews и т. Д. someView.alpha = 0; [viewController.view addSubview: someView];

[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:.5];
[UIView setAnimationDelegate:self];     
someView.alpha = 1;
[UIView commitAnimations];
...