Objective c 设置收集单元框架时发生愚蠢的崩溃

Objective c 设置收集单元框架时发生愚蠢的崩溃,objective-c,uicollectionview,Objective C,Uicollectionview,这可能是件愚蠢的事,我已经做了很多年了,但我就是想不出这件事 在我的集合视图单元类中,我有: - (void)layoutSubviews { self.title.frame=CGRectMake(50, 50, 100, 100); } 只有当我删除这行帧设置时,单元格才正常,如果不正常,我会得到: *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NS

这可能是件愚蠢的事,我已经做了很多年了,但我就是想不出这件事

在我的集合视图单元类中,我有:

- (void)layoutSubviews
{
    self.title.frame=CGRectMake(50, 50, 100, 100);

}
只有当我删除这行帧设置时,单元格才正常,如果不正常,我会得到:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFString setFrame:]: unrecognized selector sent to instance 0x7fdcbbd0afb0'
一切都安排好了,我什么都没有错过,我已经做过很多次了。 这是什么

编辑:


哦,不。。。多亏了这里善良的人们的帮助,我发现我做到了这一点

cell.title=[dic objectForKey:@"title"];
而不是这个

cell.title.text=[dic objectForKey:@"title"];

所以它变成了一根绳子!(??)

self.title是一个NSString对象,没有UIView…首先要做的是:您认为
title
的类型是什么?似乎它是
NSString
,而且
NSString
没有像
setFrame:
这样的选择器。。。这正是您的异常。@Curnelious,它不能是
UILabel
,因为异常清楚地告诉您它是一个
NSString
。即使该属性的类型为
UILabel
,但很可能在某个地方,您正在将其设置为
NSString
的实例。如果您尝试这样做,Xcode只会给您一个警告,而不是错误。查看Xcode左侧的问题导航器,看看这可能发生在何处。@Curnelious,似乎您的运行时环境对此有非常强烈的第二意见,不幸的是,它是正确的。。。而您不是,因为显式地将
NSString
类型转换为
UILabel
不会改变内存中的实际对象。
cell.title.text=[dic objectForKey:@"title"];