CollectionView mehrere Zellen markiert

Habe ich eine Sammlung der Ansicht mit zwei benutzerdefinierte Zellen ist für die Startaufstellung und eines für die Liste, ich möchte in der Lage sein zu berühren Zellen, und wählen Sie Sie als als wenn Sie wollen, zu löschen, oder teilen Sie Sie , alles was ich will für Sie nun in der Lage sein zu wählen und deselct Ihnen krank poste meinen code unter dem Ergebnis ist, wenn ich Tippen Sie auf eine Zelle werden alle Zellen markiert sind! hier ist der code:

func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
    if isGridSelected {

        let cell:cell2_Class = collectionView.dequeueReusableCellWithReuseIdentifier("cell2", forIndexPath: indexPath) as! cell2_Class

        cell.listImage.image = imageArray[indexPath.row]

        if flag == true {
            cell.layer.borderColor = UIColor.blueColor().CGColor
            cell.layer.borderWidth = 3
            cancelButton.hidden = false
        } else {
            cell.layer.borderColor = UIColor.clearColor().CGColor
            cancelButton.hidden = true
        }
        return cell
    } else {
        let cell:PhotoCollectionCell = collectionView.dequeueReusableCellWithReuseIdentifier("cell", forIndexPath: indexPath) as! PhotoCollectionCell

        if flag == true {
            cell.layer.borderColor = UIColor.blueColor().CGColor
            cell.layer.borderWidth = 3
            cancelButton.hidden = false
        } else {
            cell.layer.borderColor = UIColor.clearColor().CGColor
            cancelButton.hidden = true
        }
        cell.imageView.image = imageArray[indexPath.row]
        cell.NameLabel.text = namelabel[indexPath.row]
        cell.ModifiedLbl.text = modfLabel[indexPath.row]

        return cell
    }
}

func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {

    let cell = collectionView.cellForItemAtIndexPath(indexPath)

    if cell!.selected == true {
        flag = true
    } else {
        flag = false 
    }
    self.collectionView.reloadData()
}
  • warum ändern Sie nicht die DS, und laden Sie dann die collectionView?
  • danke, aber ich nicht so Recht, was du meinst
  • Es bedeutet, es gibt doch sicherlich einige array oder eine Art von Datenstruktur. Warum also nicht die Werte ändern, und laden Sie einfach die collectionview?
Schreibe einen Kommentar