Только второй раз использую UICollectionView, и, возможно, я откусил больше, чем могу прожевать, но тем не менее:
Я реализую UICollectionView (myCollectionView), который использует пользовательский UICollectionViewCell, который я подклассифицировал. Подклассы ячеек (FullReceiptCell) содержат UITableView и имеют размер контроллера представления. Я пытаюсь разрешить горизонтальную прокрутку между FullReceiptCells.
Подкласс UICollectionViewController, содержащий myCollectionView, помещается в стек контроллера навигации. В настоящее время включены функции myCollectionView и горизонтальная прокрутка. Однако ячеек не видно. Я подтвердил это
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
выполняется и возвращает целое число больше 0. Я также подтвердил, что делегат myCollectionView и источник данных правильно установлены в IB для подкласса UICollectionViewController.
Метод загрузки ячеек:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
не называется.
Здесь я нажимаю UICollectionViewController и свой метод viewDidLoad внутри этого контроллера (ПРИМЕЧАНИЕ: initWithBill является переопределением обычного инициализатора):
В предыдущем файле ViewControllers .m:
FullReceiptViewController *test = [[FullReceiptViewController alloc] initWithBill:currentBill];
test.title = @"Review";
[self.navigationController pushViewController:test animated:YES];
В FullReceiptViewController.m:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self.myCollectionView registerClass:[FullReceiptCell class] forCellWithReuseIdentifier:@"FullReceiptCellIdentifier"];
self.myCollectionView.pagingEnabled = YES;
// Setup flowlayout
self.myCollectionViewFlowLayout = [[UICollectionViewFlowLayout alloc] init];
[self.myCollectionViewFlowLayout setItemSize:CGSizeMake(320, 548)];
[self.myCollectionViewFlowLayout setSectionInset:UIEdgeInsetsMake(0, 0, 0, 0)];
[self.myCollectionViewFlowLayout setScrollDirection:UICollectionViewScrollDirectionHorizontal];
self.myCollectionViewFlowLayout.minimumLineSpacing = 0;
self.myCollectionViewFlowLayout.minimumInteritemSpacing = 0;
[self.myCollectionView setCollectionViewLayout:myCollectionViewFlowLayout];
//testing to see if the collection view is loading
self.myCollectionView.backgroundColor = [UIColor colorWithWhite:0.25f alpha:1.0f];
Есть какие-нибудь подсказки относительно того, почему его не называют?