전체 Cell의 크기에 맞는 CollectionView / TableView 만들기
Posted on 2021-10-20 by GKSRUDTN99
Swift&Xcode
Xcode
Swift
전체 Cell의 크기에 맞는 CollectionView / TableView 만들기
1. 아래 Class를 정의한다.
final class ContentSizedTableView: UITableView {
override var contentSize:CGSize {
didSet {
invalidateIntrinsicContentSize()
}
}
override var intrinsicContentSize: CGSize {
layoutIfNeeded()
return CGSize(width: UIView.noIntrinsicMetric, height: contentSize.height)
}
}
- contentSize가 변할 때 마다 IntrinsiceContentSize를 invalidate시켜 intrinsicContentSize가 다시 계산되도록 한다.
- intrinsicContentSize를 contentSize의 height와 같도록 맞춘다.
- intrinsicContentSize: TableView / CollectionView의 크기
- contentSize: View 안에 있는 전체 Cell들의 크기