Es gibt keinen Fehler in cellForItemAtIndexPath
, Sie, dass die label
der Zelle versteckt. So versteckt es nur das Etikett nicht die Zelle zu entfernen. Wenn Sie nur den Wert anzeigen möchten, der ungleich 2:00
ist, müssen Sie ein zusätzliches Array dafür erstellen und es den Methoden CollectionViewDelegate
geben. Erstellen Sie ein globales Array und funktionieren Sie so.
var array: [Int] = [Int]()
fun populateData() {
for i in oldArray {
if i != 2 {
self.array.append(i)
}
}
collectionView.reloadData()
}
Jetzt dieses array
Objekt in CollectionViewDelegate
Methoden wie diese
func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return self.array.count
}
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let hour = array[indexPath.row]
cell.hourBtn.setTitle("\(hour):00", forState: .Normal)
//Now there is no need to write code for hiding button
}
Hope this Ihnen helfen.
zeigen Sie einfach, was Sie ausprobiert haben –
Es gibt zwei Bilder, die meinen Code-Block und Ausgabe zeigen. Ich möchte horizontale Kollektionsansicht machen, indem ich nur den Knopf drehe, um 24hours wie "01:00", "02:00", ".." anzuzeigen. Aber möchten einige der Tasten anders als die anderen einstellen. Es wird Verbergen-Taste oder andere titleColor sein. In diesem Beispiel, ich versuche, die Taste zu verstecken, die "02:00" Titel –
hat. Aber einige andere Tasten sind auch ändern, die "7:00", "12:00", "17:00" Titel hat. Und wenn ich die horizontale Sammlungansicht nach links oder rechts verschiebe, wird jedes Mal eine andere Schaltfläche gesetzt. Das ist seltsam, oder? –