[UICollectionViewCell imageCell]:发送到实例的无法识别的选择器

Posted

技术标签:

【中文标题】[UICollectionViewCell imageCell]:发送到实例的无法识别的选择器【英文标题】:[UICollectionViewCell imageCell]: unrecognized selector sent to instance 【发布时间】:2013-02-26 01:08:52 【问题描述】:

我用这个标题阅读了所有问题。 FavoritosViewController.m 我有:

- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath 
favcolCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"fav" forIndexPath:indexPath];
[[cell imageCell]setImage:[UIImage imageNamed:[arrayimages objectAtIndex:indexPath.item]]];
return cell;

在 favcolCell.h 我有:

@property (retain, nonatomic) IBOutlet UIImageView *imageCell;

在 favcolCell.m 我有:

    @synthesize imageCell;

(...)

- (void)dealloc 
    [imageCell release];
    [super dealloc];

我错过了什么?

编辑:

解决方案:进行正确的班级注册。

【问题讨论】:

你知道“无法识别的选择器”消息是什么意思吗?这意味着命名类没有该名称的“选择器”(方法)。通常这是因为变量中的对象类型错误。 我知道这意味着什么,我在情节提要上有正确的课程,我检查了很多次。你有什么建议吗? 好吧,UICollectionViewCell 没有名为“imageCell”的方法。 所以.. 为什么如果我尝试:cell.imageCell.image=[[UIImage alloc]init]; 它会给我同样的错误? 注册正确的班级。您没有从该调用中获得 favcolCell。 【参考方案1】:

我错过了:

[self.collectionView registerClass:[FavoritosRestViewCell class] forCellWithReuseIdentifier:@"fav"];

关于ViewDidLoad 方法。我注册了错误的课程。感谢用户 HotLicks。

【讨论】:

【参考方案2】:

对我来说,这就是解决方案..

我在单元格内拍摄了一个集合视图和 imageView。但我忘了在界面(故事板)文件中设置标签。

故事板->集合视图->图像视图->属性检查器->在此处设置标签。

我希望它对某人有所帮助。

【讨论】:

以上是关于[UICollectionViewCell imageCell]:发送到实例的无法识别的选择器的主要内容,如果未能解决你的问题,请参考以下文章

Swift 检测 UICollectionViewCell 是不是被拖到另一个 UICollectionViewCell 之上

在 UICollectionViewCell 中添加模糊

如何使用 ExoPlayer 的 IMA 扩展在特定点展示广告?

UICollectionViewCell与UIScrollView取消didSelectItemAtIndexPath

UICollectionViewCell 子类问题

重用 UICollectionViewCell