Не могу создать IBOutlet UICollectionReusableView - PullRequest
0 голосов
/ 03 января 2019

Я столкнулся с незнакомой проблемой. Я взял UICollectionReusableView для заголовка представления коллекции и установил его в collectionView. Его работа полностью, но когда я создаю IBOutlet из UILabel в UICollectionReusableView, он всегда возвращает nil в методе заголовка представления коллекции viewForSupplementaryElementOfKind. В XIB файл UILabel успешно подключен.

Вот мой код. Зарегистрировать заголовок CollectionView

collectionView.register(Header.self, forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: "Header")

func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView {
      let headerView = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "Header", for: indexPath) as! Header
headerView.lblName.text = "Hello" //crash here
return headerView

}

Вот его полная демонстрация https://drive.google.com/open?id=1v2lWsQstfUiWDEldVH3Ru2HeB3LGWiXZ

1 Ответ

0 голосов
/ 03 января 2019

решаемые !!

Я использую XIB для заголовка представления коллекции, поэтому я регистрируюсь без collection view XIB. Я изменил это

collectionView.register(Header.self, forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: "Header")

К

collectionView.register(UINib(nibName: "Header", bundle: nil), forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: "Header")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...