본문 바로가기
goodLuck
개발 관련/IOS_SwiftUI

collectionView, collectionViewCell을 이용한 이미지 그리드 만들기

by snowballing 2022. 7. 12.

flow

1.

콜렌션뷰에 @IBOutlet 을 연결시키고

dataSource, delegate, delegateFlowLayout을 extension 한다.

 

*여기에서 데이터 소스는 뭐고 델리게이트는 뭐냐면, 

dataSource 콜렉션뷰를 만들때 들어갈 리소스들을 의미(약간 총알같은 거) -> 필수

delegate 정보를 제공할 수있고 셀을 강조하거나 선택할 수 있다. 또 확장해서 레이아웃을 설정할 수 있다.  -> 선택

 

2.

애셋에 이미지를 올린다. 

 

3.

collectionViewCell.swift + nib을 만든다. 

 

4.

MyCollectionViewCell.swift > imageView를 연결 

class MyCollectionViewCell: UICollectionViewCell {
    
    @IBOutlet var imageView: UIImageView!
    
    static let identifier = "MyCollectionViewCell"          //식별자를 선언해줬다 ! 

    override func awakeFromNib() {
        super.awakeFromNib()
        // Initialization code
    }
    
    public func configure(with image: UIImage){             //이미지뷰의 이미지 !!!
        imageView.image = image
    }
    
    static func nib() -> UINib {                            //nib파일 연결시켜줬다
        return UINib(nibName: "MyCollectionViewCell", bundle: nil) 
    }

with 키워드는 외부 매개변수를 가르키는 식별자를 가르키는 기능을 한다. 

 

 

func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
        collectionView.deselectItem(at: indexPath, animated: true)

댓글