[__NSCFString size]:异常 - Objective-C(Xcode)

时间:2014-07-08 14:51:53

标签: ios exception core-data crash

我有一个基于核心数据模型的应用程序,我正在将数据点加载回视图控制器。这是我得到的一切:

 -[__NSCFString size]: unrecognized selector sent to instance 0xc530dd0

启用异常断点后,我发现此行导致异常:

[self.MyImage setImage:[self.device valueForKey:@"imagename"]];

这是一个非常奇怪的错误,因为这条线有效:

[self.StepItTitle setText:[self.device valueForKey:@"title"]];

为什么会崩溃?我需要修复什么来防止这种情况发生?

1 个答案:

答案 0 :(得分:1)

对你的问题发表评论我添加了以下内容:

self.MyImage是对UIImageView类型对象的引用,[self.device valueForKey:@"imagename"]会返回带有图片名称的NSString

话虽如此,该异常明确指出您(或框架)正在向size对象调用NSStringNSString没有方法,因此是例外的原因。

您想要做的是创建一个给定文件名的UIImage并将其设置为视图。 为此,您必须执行以下操作

NSString *filename = [self.device valueForKey:@"imagename"];
UIImage *image = [UIImage imageNamed:filename]; //This loads an image if present in the main bundle
[self.MyImage setImage:image];

当然,你只需要在一行代码中做同样的事情,但为了清晰起见,我花了很多时间。