2014-12-01 2 views
0

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

Я видел другие способы атаковать эту проблему, создавая изображение ячейки и перетаскивая ее вместо этого, но это не удовлетворит мои цели. Мне нужна оригинальная ячейка, чтобы выжить за ее исходное положение экрана, когда я просматриваю UICollectionView.

ответ

0

Сделать копию при перетаскивании ячейки и скрыть исходную ячейку.

+0

Duping cell оказывается несколько сложным, только потому, что я должен вернуть subviews для обмотанной ячейки обратно к оригиналу, как только ячейка будет постоянно перемещена в новое место. Ячейка отображает текущие обновления, которые я хочу продолжить, пока я перемещаю их, и когда он прибывает в новое место. Какие-либо предложения относительно того, как это можно сделать? –

+0

Вы можете создать свою ячейку с помощью простого 'initWithFrame:', в конце концов это всего лишь UIView, предоставить фрейм вручную, потому что ячейка больше не обрабатывается представлением коллекции, а скорее вашим контроллером. Вы можете скопировать кадр из исходной ячейки. и, конечно, когда ячейка достигает конечной позиции, вы можете анимировать изменения в виде коллекции, удалив исходную ячейку и вставив новую. – Andy

+0

Я не вижу причины, по которой вы будете возиться с subviews. Потому что вы можете просто установить данные из модели как для новых, так и для перетаскивания ячеек. – Andy

Смежные вопросы