내일배움캠프 iOS

UIKit) TIL # 44 팀 프로젝트 - 영화상영정보 마무리

yjuni22 2024. 12. 19. 23:43

기존 UIView 로 구현한 영화 상세정보 뷰에서

 

 

API 에서 받아오는 영화소개의 길이에 따라
영화소개 레이블의 길이가 길어질 수 있기 때문에
이에 대한 대처가 필요했다.

 

두 가지 방법을 생각해 보았다.


1. 영화 소개 레이블을 텍스트 뷰로 만든다

 

2. 전체 화면을 스크롤 뷰로 감싼다.

두가지 방법 다 괜찮을 것 같았지만
대부분 영화소개의 길이가 길진 않기 때문에
텍스트 뷰로 높이를 고정시키는 것 보단
스크롤 뷰로 전체를 감싸는 것을 선택했다.

 

final class DetailView: UIScrollView {
    
    private let contentView = UIView()

 

기존 UIView 를 상속한 뷰에서 스크롤 뷰로 변경 후 

화면을 담을 뷰를 하나 생성하여 그 안에 담아주었다.

 

    /// 스크롤 뷰 설정
    private func setupScrollView() {
        self.alwaysBounceVertical = true
        self.showsVerticalScrollIndicator = true
    }
    
    // MARK: - 오토레이아웃
    private func configureUI() {
        self.addSubview(contentView)
        contentView.snp.makeConstraints { make in
            make.edges.equalTo(self.contentLayoutGuide)
            make.width.equalTo(self.frameLayoutGuide)
        }

 

생각보다 간단하게 몇가지 수정을 해주니 스크롤뷰로 변경할 수 있게 되었다.