UICollectionView cell.ViewWithTag, возвращающий ноль для UILabel

Эта метка, кажется, возвращает nil, хотя у меня есть reuseIdentifier и tag, установленные правильно.

override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
    var identifier: String = "CollectionCell"
    var cell: UICollectionViewCell = collectionView.dequeueReusableCellWithReuseIdentifier(identifier, forIndexPath: indexPath) as! UICollectionViewCell

    // Configure the cell


    //save till later, when images are actually present

    //var cellItem1 = hostManager[indexPath.row * 2]

    let label:UILabel = cell.viewWithTag(1) as! UILabel
    return cell

}

Программа ломается там, где установлена ​​метка = для viewWithTag. У меня нет настраиваемого класса для ячейки, только прототип. Тег установлен на раскадровке. Получаем ошибку "EXC_BAD_INSTRUCTION...". Любая помощь будет оценена, спасибо!

2 ответа

Попробуйте удалить эту строку из viewDidLoad:

self.collectionView!.registerClass(UICollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)

Я только что создал пример проекта с вашим кодом, и у меня это работает. Хотя не стоит насильно разворачивать.

Убедитесь, что у вас есть правильная настройка в вашей раскадровке:

Проверьте, правильно ли настроен ваш collectionViewCell:

И установите тег вашей метки:

Вот пример проекта

Другие вопросы по тегам