UICollectionView没有显示&委托/数据源方法未被调用

时间:2014-09-09 01:19:07

标签: ios uicollectionview

我有我的数据源方法

- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{

    return 1;
}

- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{

    return 10;
}

-(UICollectionViewCell*)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{

    LPDiaryCollectionViewCell *cell = (LPDiaryCollectionViewCell*)[collectionView dequeueReusableCellWithReuseIdentifier:@"cell" forIndexPath:indexPath];

    cell.testLabel.text = @"test";
    return cell;

}

单元格已注册

[self.collectionView registerClass:[LPDiaryCollectionViewCell class] forCellWithReuseIdentifier:@"cell"];

数据源,代理和出口已连接

connections inspector connecting collectionview to delegate, datasource and outlet

但是当我运行时,数据源方法不会被调用,并且视图是纯白色的,没有显示UICollectionView。

编辑:以编程方式添加了uicollectionview。它显示但仍然没有单元格。

2 个答案:

答案 0 :(得分:4)

您必须在storybord中设置集合视图单元格的单元格标识符(例如,我已声明identifier = "ReuseCell")并在cellForItemAtIndexPath方法中使用相同的故事板标识。

static NSString *identifier = @"ReuseCell";        
UICollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath];

答案 1 :(得分:0)

static NSString * identifier = @" Yourcellname&#34 ;;
UICollectionViewCell * cell = [collectionView dequeueReusableCellWithReuseIdentifier:identifier forIndexPath:indexPath];