Как сделать анимацию полусгибания в iPhone как приложение карт?

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

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

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

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

Спасибо

3 ответа

Решение

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

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

Метод

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

Карта Curl PNG

Page Curl PNG

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

Карта Curl - Карта

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

Карта Curl - Показать опции

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

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

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

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

Другие вопросы по тегам