많은 개체가 있지만 전체 이미지를 포함하는 사용자 지정 UICollectionViewCell
을 가지고 있습니다. 데이터베이스에 연결하고 저장된 이미지 URL을 가져와 각 사진을 추가하여 UIImageView
을 채워야합니다 (사진 수는 선택 사항입니다. 1에서 10까지)를 UIStackView
으로 변경하십시오.UICollectionView의 동적 셀 높이
이제 셀의 높이가 하드 코딩 된 것을 제외하고는 모든 것을 얻었으므로 작동하지 않습니다. 나는 크기를 얻는 방법을 모르겠다. 여기 내 코드가있다.
높이가 하드 코드 된 곳입니다. UIImageView
가 설치되는 위치를
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
{
let width = collectionView.bounds.width
let size = CGSize(width: width, height: 800)
return size
}
이
입니다.photoURLs
은 데이터베이스에서 다운로드 한 URL의 배열입니다.
if let photoURLString = post?.photoURLs
{
for urlString in photoURLString
{
let photoURL = URL(string: urlString)
let imageView = UIImageView()
imageView.sd_setImage(with: photoURL)
imageView.contentMode = .scaleAspectFill
imageView.clipsToBounds = true
imageView.widthAnchor.constraint(equalTo: postImagesStackView.widthAnchor)
postImagesStackView.addArrangedSubview(imageView)
postImagesStackView.layoutIfNeeded()
}
}
각 사진 사이에 약간의 공간을 두는 방법? 1 점처럼?
프로그램의 출력은 무엇입니까? – 3stud1ant3
질문을 올바르게 이해하고 있는지 확실하지 않습니다. 셀 출력을 요구하는 경우 동일한 셀에 최대 10 개의 이미지를 포함 할 수 있습니다. 나는 최선의 방법은'UIStackView'를 사용하고'addArrangedSubview (uiview)'메소드를 사용하여 각 이미지를 추가하는 것입니다. 지금은 높이가 고정되어 있으며 고정 된 높이 만 표시됩니다. 어떻게 든 모든 이미지의 높이를 계산하고 셀 높이를 설정 한 다음 동일한 셀을 다시 사용해야합니다. – Dani