Я хочу добавить фотографии в одну из ячеек представления моей коллекции, как в Snapchat ...
Существует только два основных требования:
Количество фотографий будет варьироваться, поэтому общая высота ячейки также должна изменяться.
Каждая фотография должна сохранять соотношение сторон.
Первоначально я думал о массиве изображений, которые должны отображаться и непосредственно перед снятием очереди с ячейки, рассчитывать размер каждой ячейки, сохраняя соотношение сторон, а затем использовать эти данные для представления изображений в виде коллекции внутри ячейки. Однако мои результаты отсутствуют.
Размеры изображений, похоже, имеют правильный размер, однако макет изображения, обработанный UICollectionViewFlowLayout, не размещает изображения должным образом
Вот метод расчета размера.
func calculateImageSize(images: [UIImage], bounds: CGRect) -> [CGSize] {
var imageSizes: [CGSize] = []
var imageWidth: Int!
var imageHeight: Int!
var aspectRatio: CGSize!
var convertedRect: CGRect!
for i in 0..<images.count {
imageWidth = images[i].cgImage?.width
imageHeight = images[i].cgImage?.height
aspectRatio = CGSize(width: imageWidth, height: imageHeight)
convertedRect = AVMakeRect(aspectRatio: aspectRatio, insideRect: bounds)
imageSizes.append(CGSize(width: convertedRect.width, height: convertedRect.height))
}
return imageSizes
}
Минимальный интервал между строками и пунктами устанавливается равным нулю.
Есть предложения?