У меня есть UICollectionView с UIButton как флажок и метка для имени и фамилии. UIButton находится внутри UICollectionViewCell. Моя проблема следующая:UICollectionViewCell с UIButton checkbox - один флажок, выбранный в момент времени
Мне нужен один флажок, выбранный во время, если следующий был нажат, предыдущий должен быть отменен. Я попытался выяснить индекс UIButton indexPath, к сожалению, не повезло. Я буду признателен за помощь.
Вот CheckBox класс:
let checkedImage = UIImage(named: "1x_checked")! as UIImage
let uncheckedImage = UIImage(named: "1x_unchecked")! as UIImage
// Bool property
var isChecked: Bool = false {
didSet{
if isChecked == true {
self.setImage(checkedImage, for: .normal)
} else {
self.setImage(uncheckedImage, for: .normal)
}
}
override func awakeFromNib() {
self.addTarget(self, action: #selector(buttonClicked(sender:)), for: .touchUpInside)
self.isChecked = false
}
func buttonClicked(sender: UIButton) {
if sender == self {
isChecked = !isChecked
ViewController:
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return listOfPartys.count
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell: izborStrankeCollectionViewCell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath) as! izborStrankeCollectionViewCell
cell.label.text = listOfPartys[indexPath.row]
return cell
проверки этого https://stackoverflow.com/questions/37731206/how-do-select-a-row-from-each-section -of-the-tableview-in-swift/37735007 # 37735007 Возможно, вы можете найти здесь что-то полезное –