- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Core Data 将商店存储为 Entity
商店,并且在每个商店我都有一个 Attribute
城市,我想按城市对商店进行分组并呈现一个 UITableView
包含所有城市。我使用 NSFetchedResultsController
获取数据并刷新 UITableView
,因为我想对城市进行分组,所以我将请求的 resultType
设置为 NSDictionaryResultType
。但是现在当我在我的 NSFetchedResultsController
上使用 objectAtIndexPath
时,我得到了 NSKnownkeysdictionary1
我的问题是我可以让 NSFetchedResultsController
处理NSDictionaryResultType
或者我应该在这种情况下放弃使用 NSFetchedResultsController
并采取其他方法?
最佳答案
您必须为其设置 NSExpressionDescription 以获取适当的值。你可以这样做,
- (NSFetchedResultsController *)fetchedResultsController
{
if (!_fetchedResultsController) {
NSExpression *cityKeypath = [NSExpression expressionForKeyPath:@"identifier"];
NSExpressionDescription *cityDescription = [[NSExpressionDescription alloc] init];
cityDescription.expression = cityKeypath;
cityDescription.name = @"City";
cityDescription.expressionResultType = NSStringAttributeType;
NSFetchRequest *fetchRequest = [NSFetchRequest fetchRequestWithEntityName:@"Shop"];
[fetchRequest setPropertiesToFetch:@[cityDescription]];
[fetchRequest setPropertiesToGroupBy:@[@"city"]];
[fetchRequest setResultType:NSDictionaryResultType];
fetchRequest.sortDescriptors = @[[NSSortDescriptor sortDescriptorWithKey:@"city" ascending:YES]];
_fetchedResultsController = [[NSFetchedResultsController alloc] initWithFetchRequest:fetchRequest
managedObjectContext:self.managedObjectContext
sectionNameKeyPath:nil
cacheName:nil];
_fetchedResultsController.delegate = self;
NSError *error;
[_fetchedResultsController performFetch:&error];
}
return _fetchedResultsController;
}
因此,您需要为要获取的属性提供 NSExpressionDescription。 NSFetchedResultsController 结果将以这样的字典类型存在,
{
@"city": "Kansas"
}
...
关于ios - NSFetchedResultsController 可以与 NSDictionaryResultType 一起使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28171562/
我想要核心数据中某个字段的最大值,因此我设置了以下请求: // Create fetch NSFetchRequest *fetch = [[NSFetchRequest alloc] init];
我正在努力获取不同的数据,并将结果类型设置为 NSDictionaryResultType,它将返回 10 个不同的数据,这很好,但我希望该数据位于 NSManagedObjectResultType
我有一个结果数组,其中包含从核心数据中获取的结果。它是一个字典数组(根据 NSDictionaryResultType)。 我获取的对象是一辆汽车,汽车有名称、制造商、型号、颜色(我可以在数组中看到所
我有一个在 OS3+ 下运行良好的应用程序。但在OS4下不起作用。我收到以下错误消息: 'NSFetchedResultsController does not support both change
我使用 Core Data 将商店存储为 Entity 商店,并且在每个商店我都有一个 Attribute 城市,我想按城市对商店进行分组并呈现一个 UITableView 包含所有城市。我使用 NS
当将 NSFetchRequest 结果类型设置为 NSDictinaryResultType 时,将返回零个对象。如果我删除 setPropertiesToFetch 和 setResultType
我正在使用以下代码从 Core Data 获取数据- NSManagedObjectContext *context=[[self appDelegate] managedObjectContext]
根据一些有限的测试,我发现如果我 执行结果类型 = NSDictionaryResultType 的 Fetch 请求 对返回值进行一些操作 存储执行 Fetch 请求的 MOC 步骤 2 中的更改不
我在 Core Data 中有一个很大的对象列表(大约 50 000 个并且会定期增加)。我通过以下请求获取它: NSFetchRequest *fetchRequest = [[NSFetchReq
我是一名优秀的程序员,十分优秀!