Как я могу "заморозить" коллекцию ViewView, где она находится? - PullRequest
0 голосов
/ 16 июня 2019

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

Как я могу это сделать?

Исследование: я не смог ничего найти по этому поводу.

Я попробовал следующее и потерпел неудачу:

//            collectionView.bounces = false
//            collectionView.isScrollEnabled = false

Обновление:

Идея, которую я обдумывал, заключается в следующем:

Добавьте ячейку, которая полностью белая, и, похоже, ее там нет. Это будет временная камера. Затем, как только обновление будет завершено, удалите его.

Ответы [ 2 ]

2 голосов
/ 16 июня 2019

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

let snapshotView = collectionView?.snapshotView(afterScreenUpdates: false)

Документ

0 голосов
/ 16 июня 2019

Попробуйте это:

func scrollViewWillBeginDragging(_ scrollView: UIScrollView) {
    scrollView.isScrollEnabled = false
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...