我正在尝试从网站获取数据并添加到我的集合视图中,但是当我调用[self.collectionView reloadData]时问题,它无法正常工作。
所以我的代码如下:
- (void)viewDidLoad {
[PYBSkuApi getSKUList:1 andHotId:@"17" success:^(NSArray *skuList) {
self.dataSource = [NSMutableArray arrayWithArray:skuList];
[self.skuCollectionView reloadData];
}failure:^(AFHTTPRequestOperation *operation, NSError *error) {
}];
}
// Data source
- (NSInteger) numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
return [self.dataSource count];
}
- (NSInteger) collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return 1;
}
- (UICollectionViewCell *) collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
....
}
问题是当我重新加载集合视图时,在更新self.dataSource之后,它进入
- (NSInteger) numberOfSectionsInCollectionView:(UICollectionView *)collectionView
但永远不会进入
- (UICollectionViewCell *) collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
我不知道为什么。
答案 0 :(得分:0)
你有没有调用过setCollectionViewLayout或initWithFrame:collectionViewLayout:
UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];
[flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical];
[_collectionView setCollectionViewLayout:flowLayout];
或
_collectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:flowLayout];