Когда пользователь выбирает ячейку CollectionView, анимировать этот кадр ячейки расти и переставить так, что она сидит имеет такой размер/расположение:Преобразование происхождения UICollectionViewCell в кадр ViewController в
CGRectMake(114, 148, 540, 620)
Это хорошо работает, если я не прокручивались до других ячеек в коллекцииView. Когда я пробую это в нижней ячейке, он все еще оживляет, но клетка идет вверх, так что координата y может быть в 148 для коллекцииView.
Я пробовал всевозможные варианты convertRect и convertPoint, но я не могу концептуализировать правильное решение.
Что нужно сделать, чтобы преобразовать значение y выбранной ячейки, чтобы перейти к эквиваленту 148 в системе координат супервизора?
EDIT: Для уменьшения путаницы
я нажимаю на ячейки в нижней части (то есть я прокрутки вниз несколько строк) моего CollectionView и это происхождение:
(x=394.5, y=4114)
В х здесь отлично , но у меня проблема с y. Я хочу анимировать эту ячейку, которую я только что выбрал так, чтобы она выглядела так, как будто координата y находится на расстоянии 148 от внешнего вида. Точно так же, как диспетчер вида модального вида. Но установление этого источника в 148 приводит к тому, что ячейка будет летать до вершины коллекцииView, потому что она полностью опущена на 4114. Как я могу получить правильное значение y, которое выглядит 148 для пользователя, но на самом деле это будет что-то ближе к исходному происхождению клетки?
EDIT 2: PIC
Где вы устанавливаете ячейку фреймов? –
Внутри 'didSelectItemAtIndexPath' – Lizza
и didSelectItemAtIndexPath получает вызов каждый раз, когда вы прокручиваете? –