只有第二次使用UICollectionView了,也许我咬的东西比我可以咀嚼的要多,但是:
我正在实现一个UICollectionView(myCollectionView),它使用已子类化的自定义UICollectionViewCell。子类化的单元格(FullReceiptCell)包含UITableView,并且是viewcontroller的大小。我试图允许FullReceiptCells之间的水平滚动。
包含myCollectionView的子类UICollectionViewController被推入导航控制器堆栈。当前,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];
关于为什么不调用它的任何线索?