#swift #xcode #uiimageview #uicollectionviewcell
#swift #xcode #uiimageview #ячейка uicollectionviewcell
Вопрос:
Как я могу установить ширину ячейки представления коллекции в зависимости от вида изображения. Я пробовал использовать приведенный ниже код, но ширина одинакова для всех ячеек. Я установил ограничение высоты изображения как 100, а ограничение ширины > = 50 и режим содержимого как соответствие аспекту. if let flowLayout = itemOfferCollectionView.collectionViewLayout as? UICollectionViewFlowLayout { flowLayout.estimatedItemSize = UICollectionViewFlowLayout.automaticSize }
Ответ №1:
Я разместил эти настройки для макета, чтобы сделать его саморазмерным
let layout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
layout.estimatedItemSize = UICollectionViewFlowLayout.automaticSize
Вам также необходимо установить ограничения вашего contentView и ImageView в ячейке следующим образом
contentView.topAnchor.constraint(equalTo: topAnchor).isActive = true
contentView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true
contentView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true
contentView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true
imageView.topAnchor.constraint(equalTo: topAnchor, constant: 0).isActive = true
imageView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true
imageView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true
imageView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true