Вопрос

Мне хорошо известно, что есть только два доступных перехода UIView: UIViewAnimationTransitionFlipFromLeft и UIViewAnimationTransitionFlipFromRight. Мне интересно, есть ли в любом случае, что я могу реализовать / эмулировать UIViewAnimationTransitionFlipFromTop или UIViewAnimationTransitionFlipFromBottom.

Единственный способ, которым я могу думать, это перевернуть ось x с осью y, но я не видел никакой информации о том, как это сделать. Простая установка координат каждой оси не решит проблему, поскольку ось X остается до оси X.

У кого-нибудь есть идеи, как это можно сделать?

Это было полезно?

Решение

Вы можете сделать это, применив CATransform3D к CALayer вашего основного вида, за которым следует CALayer вашего вторичного представления. В этом ответе я указываю на реализацию Mac этой анимации Майк Ли. Вы сможете повторно использовать значительную часть этого кода, чтобы воссоздать этот эффект на iPhone.

Другие советы

Полагаю, вам придется использовать блок анимации UIView с трехмерным преобразованием поворота на 90 градусов, попросить делегата Core Animation вызвать вас, когда это будет сделано, поменять вид на новый (3D повернут на другой стороне) и цепь с последними 90 градусами для нового вида ...

Хотя это не совсем то, что вам нужно, есть две встроенные анимации, которые вы не упомянули: UIViewAnimationTransitionCurlDown и UIViewAnimationTransitionCurlUp.

CurlUp выглядит так, как будто кто-то снимает вид снизу вверх, а CurlDown выглядит так, как будто вид разворачивается сверху вниз сверху вниз. Вы должны хотя бы взглянуть на них, так как они просты в использовании.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top