extension ServiceProviderProfileViewController : UICollectionViewDelegate, UICollectionViewDataSource {
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return categories.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = categoryCollectionView.dequeueReusableCell(withReuseIdentifier: "CategoryCollectionViewCell", for: indexPath) as! CategoryCollectionViewCell
cell.categoryLabel.text = categories[indexPath.row]
if indexPath.row == selectedCellIndex {
cell.categoryView.layer.borderColor = UIColor.blue.cgColor
cell.categoryLabel.textColor = UIColor.blue
} else {
cell.categoryView.layer.borderColor = UIColor.lightGray.cgColor
cell.categoryLabel.textColor = UIColor.gray
}
return cell
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
selectedCellIndex = indexPath.row
self.categoryCollectionView.reloadData()
}
}
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter