使用从Core Data存储中检索的UIImage设置animationImages数组会导致崩溃吗?

时间:2011-08-03 15:01:54

标签: iphone core-data ios4 uiimageview nsmutablearray

我无法找到Apple文档,也无法扫描网页以找到解决此问题的方法。

我使用带有排序描述符的获取请求从Core Data存储中检索图像(全部~70KB),制作结果的可变副本,并将对象添加到可变数组中,如下所示...

NSFetchRequest *requestA = [[NSFetchRequest alloc] init];
NSEntityDescription *entity = [NSEntityDescription entityForName:@"YearPhoto" inManagedObjectContext:managedObjectContext];
[requestA setEntity:entity];

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"date" ascending:YES];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[requestA setSortDescriptors:sortDescriptors];
[sortDescriptor release];
[sortDescriptors release];



NSError *error = nil;
NSMutableArray *mutableFetchResultsA = [[managedObjectContext executeFetchRequest:requestA error:&error] mutableCopy];
if (mutableFetchResultsA == nil) {

}

[self setImageArray:mutableFetchResultsA];
[mutableFetchResultsA release];
[requestA release];

然后我将AnimationImages设置为这个可变数组......

 self.theImageView.animationImages = [NSMutableArray arrayWithArray:imageArray];

我已经使用

进行了检查
NSLog(@"array's content:%@",imageArray);

这证实了数组不是(null),我得到了下面的多个例子......

"<YearPhoto: 0x16d0e0> (entity: YearPhoto; id: 0x16bc10 <x-coredata://2F4DDE20-855E-484A-AC8F-9F8E60F4162E/YearPhoto/p1> ; data: <fault>)",

当应用程序崩溃时,它会在这行代码中出错..

    self.theImageView.animationImages = [NSMutableArray arrayWithArray:imageArray];

调试器抛出......

2011-08-03 15:53:24.843 Year_book_app[2773:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[YearPhoto scale]: unrecognized selector sent to instance 0x190d60'

我不知道为什么会失败。任何人都可以对这个问题有所了解。我是否正确播种动画图像?

我提前感谢你的任何帮助!!

如果您需要任何进一步的详细信息,请告知我们。

DetartrateD。

1 个答案:

答案 0 :(得分:0)

问题是您发送的类型为YearPhoto而不是UIImage的对象。 self.theImageView.animationImages将一组UIImages作为有效值。