Ios 设置NSArray属性时无法识别选择器

Ios 设置NSArray属性时无法识别选择器,ios,objective-c,Ios,Objective C,我有一个返回数组的方法: -(NSArray*)fetchStoresFromContext { NSManagedObjectContext *context = [RKManagedObjectStore defaultStore].mainQueueManagedObjectContext; NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Store"]; NS

我有一个返回数组的方法:

-(NSArray*)fetchStoresFromContext {
    NSManagedObjectContext *context = [RKManagedObjectStore defaultStore].mainQueueManagedObjectContext;
    NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Store"];

    NSSortDescriptor *descriptor = [NSSortDescriptor sortDescriptorWithKey:@"name" ascending:YES];
    fetchRequest.sortDescriptors = @[descriptor];

    NSError *error = nil;
    NSArray *fetchedObjects = [context executeFetchRequest:fetchRequest error:&error];

    return fetchedObjects;
}
如果创建一个新的NSArray并按如下方式调用此方法:

NSArray *test = [self fetchStoresFromContext];
一切正常。[测试计数]返回6

我拥有以下财产:

@property (nonatomic, strong) NSArray* stores;
如果我调用
\u stores=[self-fetchStoresFromContext]
我会得到以下错误:

-[__NSCFNumber length]: unrecognized selector sent to instance 0x15e3c2f0

这是怎么回事?属性是NSArray,对象也是NSArray,那么我为什么会遇到此问题?

此错误意味着您的代码正在传递一个NSNumber,而被调用的代码需要一个NSString或其他具有length方法的对象

不够清楚…执行[\u存储计数]时是否引发错误

如果是,请尝试在计数前实例化数组:

_stores = [[NSArray alloc] initWithArray:[self fetchStoresFromContext]];

该错误意味着您的代码正在传递一个NSNumber,而被调用的代码需要一个NSString或其他具有length方法的对象

不够清楚…执行[\u存储计数]时是否引发错误

如果是,请尝试在计数前实例化数组:

_stores = [[NSArray alloc] initWithArray:[self fetchStoresFromContext]];

您的
fetchStoresFromContext
似乎返回了一个
NSNumber
,而不是
NSArray
@我第一次遇到错误时签入的顺磁性羊角面包<代码>NSLog(@“类名:%@”,NSStringFromClass([[self-fetchStoresFromContext]Class])返回
\u NSArrayI
Set@property(非原子,强)NSArray*存储@gottlieb我试过了,得到了同样的错误当你调用这个方法时,你得到了那个错误吗?或者当您稍后在ivar上打电话时?您的
fetchStoresFromContext
似乎返回了一个
NSNumber
,而不是
NSArray
@我第一次遇到错误时检查到的顺磁性牛角面包<代码>NSLog(@“类名:%@”,NSStringFromClass([[self-fetchStoresFromContext]Class])返回
\u NSArrayI
Set@property(非原子,强)NSArray*存储@gottlieb我试过了,得到了同样的错误当你调用这个方法时,你得到了那个错误吗?或者当你稍后打电话给你的ivar时?