У меня есть UICollectionViewCell. В этой камере я ярлык с именем cellTitle
, который я объявил в верхнем уровне класса:Как создать метод, который обновляет UICollectionViewCell каждую секунду?
var cellTitle = UILabel()
изменить текст этой метки в каждой ячейке в методе cellForItemAtIndexPath
:
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
cellTitle = UILabel(frame: CGRectMake(0, 0, cell.bounds.size.width, 160))
cellTitle.numberOfLines = 3
cell.contentView.addSubview(cellTitle)
switch indexPath.item {
case 0:
cellTitle.text = definitions[0]
case 1:
cellTitle.text = definitions[1]
case 2:
cellTitle.text = definitions[2]
case 3:
cellTitle.text = definitions[3]
case 4:
cellTitle.text = definitions[4]
case 5:
cellTitle.text = definitions[5]
case 6:
cellTitle.text = definitions[6]
case 7:
cellTitle.text = boatTypes[0]
case 8:
cellTitle.text = boatTypes[1]
case 9:
cellTitle.text = boatTypes[2]
case 10:
cellTitle.text = boatTypes[3]
case 11:
cellTitle.text = boatTypes[4]
case 12:
cellTitle.text = boatTypes[5]
case 13:
cellTitle.text = boatTypes[6]
case 14:
cellTitle.text = "Press to quit game. Time left: \(timerText) seconds"
default:
break
}
return cell
}
Как вы можете видеть, на cell
14 у меня есть текст, который не установлен в элемент из массива. Я использую timerText
из таймера, который я создал, который отсчитывает с интервалом в 1 секунду. Проблема заключается в том, что текст в cell
14, который является timerText
, не обновляется, он просто остается на том, что я его впервые установил, что составляет 45
. Как создать метод обновления только для cell
14, который не вызывает ошибок? Спасибо за поддержку!
Это обновление этикетки, но числа перекрывают друг друга. Как удалить предыдущую метку, чтобы они не перекрывались? Спасибо. –