IOS中UICollectionViewCell的问题

UICollectionView使用的时候,总是碰到各种问题,网上的解决方案 很多,我在此不再一一说明,基本的使用去百度就好了

我这里记录两个问题:

1. could not dequeue a view of kind: UICollectionElementKindCell with identifier


解决方案:

 UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayout alloc] init];

    [flowLayout setScrollDirection:UICollectionViewScrollDirectionVertical];

    collView = [[UICollectionView alloc] initWithFrame:CGRectMake(10, height + 10, ScreenWidth-20, (ScreenWidth-20)/3*2+20) collectionViewLayout:flowLayout];


    [collView registerClass:[GoodsTypeCollectionViewCell class] forCellWithReuseIdentifier:@"GoodsTypeCollectionViewCell"];

    collView.backgroundColor=[UIColor clearColor];

    collView.dataSource = self;

    collView.delegate = self;


  标红色的字体一定不能忘,问题解决


2. 自定义的GoodsTypeCollectionViewCell中 有两个标签:ImageView和label, 刚开始的时候在

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

这个方法中实例化cell ,cell中的这两个标签总是nil


  解决方案:在cell的.m文件中加如下方法

- (id)initWithFrame:(CGRect)frame

{

    self = [super initWithFrame:frame];

    if (self)

    {

        // 初始化时加载collectionCell.xib文件

        NSArray *arrayOfViews = [[NSBundle mainBundle] loadNibNamed:@"GoodsTypeCollectionViewCell" owner:self options:nil];

        

        // 如果路径不存在,return nil

        if (arrayOfViews.count < 1)

        {

            return nil;

        }

        // 如果xibview不属于UICollectionViewCell类,return nil

        if (![[arrayOfViews objectAtIndex:0] isKindOfClass:[UICollectionViewCell class]])

        {

            return nil;

        }

        // 加载nib

        self = [arrayOfViews objectAtIndex:0];

    }

    return self;

}

问题解决



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值