UICollectionView один из самых популярных компонентов в iOS-разработке, и часто стандартного поведения недостаточно: необходимо менять расстановку элементов, добавлять анимации, декоративные элементы, менять стандартное поведение. За все это отвечает layout коллекции и класс UICollectionViewLayout. Но это довольно запутанный класс, который нужно расширять довольно неочевидными способами. К сожалению, документация не очень помогает разобраться с этим вопросом. Нет по этой теме и подробных статей.
В прошлом году Евгений потратил несколько месяцев, чтобы разобраться с вопросами создания своих лейаутов для UICollectionView: как не просто расставить элементы, но и точечно обновлять коллекцию, добавлять кастомные анимации, произвольно менять позицию скролла, добавлять любые декорации — и применил все эти знания в Маркете ВКонтакте. Теперь он делится этим с вами.