Я ищу руководство или учебник, который покажет мне, как настроить простой UICollectionView, используя только код.
Я изучаю документацию на сайте Apple и также использую справочное руководство .
Но мне бы очень понравилось простое руководство, которое может показать мне, как настроить UICollectionView без необходимости использовать раскадровки или файлы XIB / NIB - но, к сожалению, когда я ищу, все, что я могу найти, - это учебники, в которых есть раскадровка.
Initializing a Collection View
: вы используете оттуда инициализатор?Ответы:
Заголовочный файл: -
Файл реализации: -
Вывод---
источник
@property (strong, nonatomic) UICollectionView *collectionView;
UICollectionViewCell
, вы действительно не хотите регистрироватьсяUICollectionViewCell
, а вместо этого хотите создать подкласс, настройте ячейку вinitWithFrame
методе, а затем зарегистрируйте этот подкласс с идентификатором ячейки. неUICollectionViewCell
._collectionView=[[UICollectionView alloc] initWithFrame:self.view.frame collectionViewLayout:layout];
Для пользователя swift4: -
источник
Для Swift 2.0
Вместо реализации методов, которые необходимы для рисования
CollectionViewCells
:использование
UICollectionViewFlowLayout
Затем реализуйте
UICollectionViewDataSource
методы как требуется:источник
Swift 3
источник
Основываясь на ответе @ Warewolf, следующий шаг - создать собственную ячейку.
Перейти на
File -> New -> File -> User Interface -> Empty -> Call
этот кончик"customNib"
.В вашем
customNib
перетаскиванииUICollectionView
Cell в. Дайте ему повторно идентификатор соты@"Cell"
.File -> New -> File -> Cocoa Touch Class -> Class
именованный"CustomCollectionViewCell"
подкласс ifUICollectionViewCell
.Вернитесь к пользовательскому перу, щелкните ячейку и создайте этот пользовательский класс
"CustomCollectionViewCell"
.Перейти к вашему
viewDidLoad
viewcontroller
и вместо[_collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
иметь
UINib *nib = [UINib nibWithNibName:@"customNib" bundle:nil]; [_collectionView registerNib:nib forCellWithReuseIdentifier:@"Cell"];
Кроме того, измените (на ваш новый идентификатор ячейки)
UICollectionViewCell *cell=[collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
источник
Вы можете обрабатывать пользовательские ячейки в представлении uicollection, смотрите код ниже.
источник
Документы Apple:
Этот метод используется для инициализации
UICollectionView
. здесь вы предоставляете кадр иUICollectionViewLayout
объект.В конце добавить
UICollectionView
какsubview
к вашему мнению.Теперь представление коллекции добавлено программно. Вы можете продолжать учиться.
Счастливого обучения !! Надеюсь, это поможет вам.
источник
The layout object to use for organizing items. The collection view stores a strong reference to the specified object. Must not be nil.
источник
сборный экзамен
.h файл
источник
Для тех, кто хочет создать пользовательскую ячейку :
CustomCell.h
CustomCell.m
UIViewController.h
UIViewController.m
источник
источник