Хотя я считаю, что у @Alex Bailey есть фантастический ответ, я бы хотел добавить к нему больше.
let flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
self.myCollectionView = UICollectionView(frame: self.view.bounds, collectionViewLayout: flowLayout)
Я хочу поговорить о том, почему ваш не работает и почему это работает.В вашем случае у вас есть
self.myCollectionView = UICollectionView(frame: self.view.bounds, collectionViewLayout: flowLayout
, однако, если вы посмотрите на свой код, НЕТ переменной с именем flowLayout.Поэтому Swift ищет переменную с именем flowLayout
, которая не была инициализирована заранее.В правильном ответе мы инициализируем flowLayout
как
let flowLayout: UICollectionViewFlowLayout = UICollectionViewFlowLayout()
Поэтому мы знаем, что такое flowLayout
: UICollectionViewFlowLayout
.Поэтому в Swift, если вы видите ошибку unresolved identifier
, вы, возможно, не инициализировали переменную, которую, возможно, думали, что сделали.Как правило, это простая ошибка, которую нужно устранить.