- How to setup CollectionView Item Size?
private func setupCollectionViewItemSize() {
if collectionViewFlowLayout == nil {
let numberOfItemFerRow: CGFloat = 2
let lineSpacing: CGFloat = 5
let interItemSpacing: CGFloat = 5
let width = (UIScreen.main.bounds.width - (numberOfItemFerRow - 1) * interItemSpacing) / numberOfItemFerRow
let height = width
collectionViewFlowLayout = UICollectionViewFlowLayout()
collectionViewFlowLayout.itemSize = CGSize(width: width, height: height)
collectionViewFlowLayout.sectionInset = UIEdgeInsets.zero
collectionViewFlowLayout.scrollDirection = .vertical
collectionViewFlowLayout.minimumLineSpacing = lineSpacing
collectionViewFlowLayout.minimumInteritemSpacing = interItemSpacing
collectionView.setCollectionViewLayout(collectionViewFlowLayout, animated: true, completion: nil)
}
}
- How to fix conflit didSelected and TapGestureRecognizer?
When you set TapGestureRecognizer = 2 with cell in TableView or CollectionView, you need insert code in ItemCollectionViewCell
lazy var doubleTapRecognizer: UITapGestureRecognizer = {
let tapRecognizer = UITapGestureRecognizer(target: self, action: #selector(didDoubleTap))
tapRecognizer.numberOfTapsRequired = 2
tapRecognizer.delaysTouchesBegan = true
tapRecognizer.cancelsTouchesInView = true
return tapRecognizer
}()