0

我用另一个视图控制器为我的表格视图制作了一个自定义单元格,以向其中添加内容。但奇怪的是内容显示缓慢。我的意思是大部分时间只出现中心线(有时什么都没有),然后玩单元格,过了一会儿,剩下的内容(总共 3 行)终于出现了。

只有 > 出现!

过了一会儿,

在此处输入图像描述

一切都在那里。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    eatEventTableViewCell *cell = (eatEventTableViewCell*)[tableView dequeueReusableCellWithIdentifier:@"expenseCell"];
    if (cell == nil) {
    cell = [[eatEventTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"expenseCell"];
    }

    [self configureCell:cell atIndexPath:indexPath];
    return cell;
}

- (void)configureCell:(eatEventTableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath
{
    NSManagedObject *object = [self.fetchedResultsController objectAtIndexPath:indexPath];

    cell.nameField.text = [[object valueForKey:@"descText"] description];
    cell.tagsField.text = [[object valueForKey:@"type"] description];
    cell.creationDateLabel.text = [eatAddViewController dateFormat:[[object valueForKey:@"timeStamp"] description] :TRUE];
    if([eatExpenseType getSelectionValue :cell.tagsField.text :m_setting])
    {
        cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
    }
    else
    {
        cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;
    }
}
4

1 回答 1

1
  • 由于您是从 Core Data 获取的,因此一种可能性是获取需要很长时间。您是否正在处理大型数据库
  • 另一个可能的解释是您正在主线程上执行其他一些 CPU 密集型任务。每个 UI 操作都在主线程上进行,如果主线程还忙于其他任务,您可能会遇到显示滞后。然后,您可能希望在后台线程上执行这些其他任务。
于 2013-01-24T01:13:56.603 回答