Как перейти с UICollectionView на UIViewController, например Pinterest/Evernote

У меня есть UICollectionView, и когда элемент выбран, я бы хотел, чтобы он анимировался в полноэкранном режиме. Таким образом, он перейдет от размера ячейки к полноэкранному режиму и станет UIViewController. Pinterest и Evernote имеют такое поведение, когда нажатие на ячейку переводит ячейку в полноэкранный контроллер просмотра.

Есть ли пример того, как это делается? Я искал несколько проектов, но не нашел ни одной иллюстрации перехода ячейки в полноэкранный контроллер просмотра.

Pinterest обсуждает это здесь: https://medium.com/@Pinterest_Engineering/behind-the-pins-building-pinterest-3-0-for-ios-100f57f6940

введите здесь описание изображения


person user1218464    schedule 06.04.2014    source источник
comment
ты когда-нибудь находишь ответ? Я пытаюсь сделать то же самое здесь..   -  person Oscar Yuandinata    schedule 08.05.2014
comment
@OscarYuandinata Может быть, вы попробуете этот репо   -  person demon    schedule 03.07.2014
comment
вау здорово! спасибо @демон   -  person Oscar Yuandinata    schedule 03.07.2014


Ответы (1)


Осуществить этот переход несложно. Как сказано в статье, они настраивают переход для реализации протокола UIViewControllerAnimatedTransitioning, ничего кроме. Вам нужно рассчитать новый размер позиции, которую вы нажали на imageView для анимации. Вот и все.

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

https://itunes.apple.com/app/hua-ban-quan-qiu-you-mei-tu/id494813494?mt=8

И этот:

https://itunes.apple.com/app/mei-tu-sou-sou-wan-zhuan-wei/id781146829?mt=8


Я создал этот репозиторий за несколько дней до этого. И со Swift я почти закончил этот переход, кроме небольшой проблемы, это мой первый отработанный демонстрационный проект на основе Swift. Но это нетрудно понять, если вы не новичок в iOS-разработке и вы бы изучили Swift BTW. Позже доделаю и исправлю ошибки.

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

Удачи.

person demon    schedule 25.06.2014
comment
Спасибо вам. Теоретически я понимаю, но было бы неплохо увидеть реальный пример использования кода, чтобы действительно понять тонкости. Например, как в вашем приложении, так и в приложении Pinterest положение ячейки также меняется при уменьшении масштаба. Есть мелочи, которые имеют смысл концептуально, но на самом деле проблема заключается в их кодировании. - person user1218464; 27.06.2014
comment
@user1218464 user1218464 Роджер, я покажу вам демонстрацию, чтобы реализовать это, возможно, через несколько дней, и я хотел бы посмотреть, есть ли лучший способ сделать этот переход, после того, как он закончится, я отредактирую этот ответ. - person demon; 27.06.2014
comment
Эй, я хотел знать, что, если я хочу удалить ячейку из представления коллекции при нажатии на кнопку, как мне это реализовать? - person Stephanie; 18.10.2017