核心数据填充的表格无法正确显示

时间:2011-08-18 13:31:52

标签: ios uitableview core-data

我正在使用类“SampleClass”的NSManagedObjects数组填充TableViewController。虽然获取数组中的对象数量正确返回(即,如果表格显示59个对象,则创建59行),单元格的其他参数显示为“小故障”。

例如,在object.name,“null”设置标题之前,单击单元格,选择另一个单元格,然后返回初始单元格。

我已经尝试在视图中显示`[tableview reloadData]',加载数据仍然需要很长时间。是否有更好的方法来填充单元格而不是:

    - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"Cell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {

    cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:CellIdentifier] autorelease];

}

Class *classObject = [dataArray objectAtIndex:indexPath.row];

cell.textLabel.text = [classObject name].....

其中dataArray指向来自coreData调用的NSMutableFetchedArray

注意:模拟器没有填充比实际iPad更多的单元格。但是,一旦选择了另一个选项卡,当您返回选项卡时,所有单元格都会正确显示。

1 个答案:

答案 0 :(得分:2)

您可能需要查看NSFetchedResultsController

http://developer.apple.com/library/iOS/ipad/#documentation/CoreData/Reference/NSFetchedResultsController_Class/Reference/Reference.html

这是一个特殊的类,专门用于使用核心数据查询的结果填充表。

在过去使用核心数据时,我总是使用这个类而不是其他方法。

相关问题