Я пытаюсь скопировать NSMutableArray* в NSArray*, но это не работает и генерирует ошибку [__NSCFString superview]: нераспознанный селектор отправлен в экземпляр. Вот код:
//where gc is a NSDictionary*, recentKey is a NSString*, and _objects is a NSArray*
//gc is an singleton is used to save chache data, with NSKeyedUnarchiver class
//_objects is used to reload the UITableView's data
NSArray *savedNews = [[NSArray alloc] initWithArray:[gc objectForKey:recentkey]];
//this not works...why??
_objects = [[NSArray alloc] initWithArray:savedNews];
Решение:
Да, как предполагает Герман, ошибка была внешней. В массиве saveNews использовался класс с NSEncoding с ошибкой:
- (void)encodeWithCoder:(NSCoder *)encoder {
//...where element was NSString* and not "UIImageView"
// element should be imgView
if (imgView) [encoder encodeObject:element forKey:@"imgView"];
}
Спасибо за всех, ребята.