24.10.31 Today I Learned

2024. 10. 31. 16:15

어플 수정중에 컬렉션뷰를 수평 스크롤 할때 밑줄을 지우는 방법을 추가했음

 

해당 컬랙션뷰를 선언하고나서 기능을 추가할때

private let puppyCollectionView: UICollectionView = {
        let layout = UICollectionViewFlowLayout()
        layout.scrollDirection = .horizontal
        layout.minimumLineSpacing = 0
        layout.minimumInteritemSpacing = 0

        let collectionView = UICollectionView(frame: .zero, collectionViewLayout: layout)
        collectionView.backgroundColor = UIColor.puppyPurple.withAlphaComponent(0.1)
        collectionView.layer.cornerRadius = 15
        collectionView.isPagingEnabled = true // 페이징 가능하도록 설정
        collectionView.isHidden = true // 초기에는 숨김
        collectionView.showsHorizontalScrollIndicator = false // 스크롤시 밑줄 숨김 <<
        return collectionView
    }()

맨 마지막에 

.showHorizontalScrollIndicator = false로 설정해주면 됨

 

그리고 다른 컬렉션뷰에 페이지 인디케이터를 추가했는데 화면에 나오지 않았음. 그 이유는 pageControl.numberOfpages가 설정되지 않아서였음.

그래서 Rxswift를 사용하고 있어서 

private func bindCollectionView() {
    viewModel.puppySubject
        .observe(on: MainScheduler.instance)
        .subscribe(onNext: { [weak self] pets in
            guard let self = self else { return }
            if pets.isEmpty {
                self.profilePuppyCollectionView.isHidden = true
                self.noDataLabel.isHidden = false
            } else {
                self.profilePuppyCollectionView.isHidden = false
                self.noDataLabel.isHidden = true
                // pageControl의 페이지 수를 컬렉션 뷰 아이템 수로 설정
                self.pageControl.numberOfPages = pets.count
            }
        })
        .disposed(by: disposeBag)

    viewModel.puppySubject
        .bind(to: profilePuppyCollectionView
            .rx
            .items(cellIdentifier: ProfilePuppyCollectionViewCell.identifier,
                   cellType: ProfilePuppyCollectionViewCell.self)) { index, data, cell in
        cell.configure(with: data)
    }.disposed(by: disposeBag)
    
    profilePuppyCollectionView.rx.setDelegate(self).disposed(by: disposeBag)
}

이렇게 설정해주니 됐음.

'Today I Learned > 2024' 카테고리의 다른 글

앞으로 TIL작성은 따로 하지 않고 블로그 게시로 대체  (0) 2024.12.30
24.10.29 Today I Learned  (0) 2024.10.29
24.10.15 Today I Learned  (1) 2024.10.15
24.09.27 Today I Learned  (3) 2024.09.27
24.09.13 Today I Learned  (0) 2024.09.13

BELATED ARTICLES

more