如果没有存储任何内容,Coredata fetchRequest会中断

时间:2015-02-08 13:51:51

标签: ios objective-c xcode core-data nsfetchrequest

我有我的coredata设置和保存,fetchRequests运行良好。在这种情况下,我正在获取保存在'Item'中的第一个对象,但如果fetchResult为空,我不想调用我的方法'displayDataInLabel',就好像它没有任何东西,这个方法中断了(我猜是因为什么都没有在'objectAtIndex:0'

-(void)viewDidAppear:(BOOL)animated
    {
    if (_fetchResultsController.fetchedObjects == nil) {
            return;
        }

    else
    [self displayDataInLabel];
}

-(void)displayDataInLabel
{

    Item *thisItem = [_fetchResultsController.fetchedObjects objectAtIndex:0];

    NSLog(@"test item %@", thisItem.name);

}

1 个答案:

答案 0 :(得分:0)

检查nil是不够的,因为即使找不到任何内容,结果仍然是有效的(空)数组, nil

相反,检查结果的count属性是否为零。