🧑‍💻/Swift

UICollectionViewCell의 버튼이 동작하지 않는 문제 해결하기

유리맥 2024. 11. 21. 17:26
반응형

SkeletonView의 showSkeleton() hideSkeleton() 으로 스켈레톤을 구현하던 중

UICollectionViewCell (UITableViewCell) 내부에 버튼이 포함된 경우 버튼 액션이 동작하지 않았습니다.

 

SkeletonView.showSkeleton() 호출 시 contentView.isUserInteractionEnabled 값을 true로 설정하기라도 하는건지 ...

contentView 이벤트를 수신하고 있어서 버튼 클릭 이벤트가 호출되지 않는 듯 합니다.

contentView.isUserInteractionEnabled를 false로 지정하면 버튼이 동작합니다.

import UIKit

class MyCell: UICollectionViewCell {    
    override init(frame: CGRect) {
        super.init(frame: frame)
        // contentView의 isUserInteractionEnabled 값 변경
        contentView.isUserInteractionEnabled = false
    }
    
    required init?(coder: NSCoder) {
        fatalError("init(coder:) has not been implemented")
    }
    
    override func prepareForReuse() {
        super.prepareForReuse()
    }
}
반응형