Solo es la segunda vez que uso UICollectionView's y quizás he mordido más de lo que puedo masticar, pero sin embargo:
Estoy implementando un UICollectionView (myCollectionView) que usa UICollectionViewCell personalizado que he subclasificado. Las celdas de subclases (FullReceiptCell) contienen UITableView y son del tamaño del controlador de vista. Estoy tratando de permitir el desplazamiento horizontal entre FullReceiptCells.
El UICollectionViewController subclasificado que contiene myCollectionView se está insertando en una pila de controlador de navegación. Actualmente, myCollectionView loas y el desplazamiento horizontal están habilitados. Sin embargo, no se ven celdas. He confirmado que
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
se ha ejecutado y está devolviendo un número entero mayor que 0. También he confirmado que el delegado y la fuente de datos de myCollectionView están configurados correctamente en IB para el UICollectionViewController subclasificado.
El método donde se cargarán las celdas:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
no está siendo llamado.
Aquí es donde presiono el UICollectionViewController y mi método viewDidLoad dentro de ese controlador (NOTA: initWithBill es una anulación del inicializador normal):
En el archivo .m anterior de ViewControllers:
FullReceiptViewController *test = [[FullReceiptViewController alloc] initWithBill:currentBill];
test.title = @"Review";
[self.navigationController pushViewController:test animated:YES];
En 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];
¿Alguna pista de por qué no se llama?