Как сделать так, чтобы в iPhone была анимация полукрутки, как в приложении «Карты»? - PullRequest
5 голосов
/ 19 мая 2010

Я использую следующий код для анимации скручивания страницы

[UIView beginAnimations:@"yourAnim" context:nil];
[UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:yourView cache:cacheFlag];
...
[UIView commitAnimations];

Можно ли сделать анимацию полукрутки, как maps.app на iphone / ipod?

Есть идеи, как сделать подобный эффект?

Спасибо

Ответы [ 3 ]

9 голосов
/ 20 апреля 2011

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

Это довольно просто использовать; просто убедитесь, что вы начинаете с полноэкранного просмотра и загружаете со стилем UIModalPresentationFullScreen, который, по моему мнению, используется по умолчанию.

Существуют анимационные переходы для использования аналогичного эффекта в UIViews, как правило, которые были добавлены начиная с 4.0, но это простой способ использования эффекта.

simpleVC * myModalVC = [[simpleVC alloc] init];
[myModalVC setModalTransitionStyle:UIModalTransitionStylePartialCurl];
[myModalVC setDelegate:self];

[self presentModalViewController:myModalVC animated:YES];
[simpleVC release];

Ссылка на Apple Docs на константы UIModalTransitionStyle

7 голосов
/ 05 июля 2012

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

Метод

Сначала я создал PNG на углу страницы в Photoshop на основе скриншота Карт.

Карта Curl PNG

Page Curl PNG

Карта - Параметры скрыты

Map Curl - Map

Карта - раскрыты варианты

Map Curl - Options Reveal

Затем я добавил его в UIButton, который выполняет частичный переход при скручивании страницы.

Полный исходный код доступен на GitHub

Полный рабочий проект доступен на GitHub . Обновлено для iPhone 5.

0 голосов
/ 19 мая 2010

Используйте недокументированные типы анимации mapCurl и mapUnCurl

...