【发布时间】:2010-11-12 23:24:05
【问题描述】:
我正在编写一个基于 coredata 的 iPhone 应用程序来显示食谱。为了提高性能,在 TableView 中显示它们时,我想启用批处理 (-setFetchBatchSize:) 并仅获取“名称”属性 (-setPropertiesToFetch:)。当我同时打开两者时,它不起作用并且列表为空。只要我注释掉下面代码中标记的行之一,它就可以正常工作。
我在这里缺少什么?就不能两者兼得吗?
NSFetchRequest *fetchRequest = [[[NSFetchRequest alloc] init] autorelease];
[fetchRequest setEntity:[NSEntityDescription entityForName:@"Rezept" inManagedObjectContext:chk_context]];
// *snip*
//BATCHING
[fetchRequest setFetchBatchSize:25];
NSDictionary *entityProperties = [[NSEntityDescription entityForName:@"Rezept" inManagedObjectContext:chk_context] propertiesByName];
//PROPERTIES
[fetchRequest setPropertiesToFetch:[NSArray arrayWithObject:[entityProperties objectForKey:@"name"]]];
【问题讨论】:
标签: iphone objective-c core-data