Ios 具有标识符的多个自定义单元格-重新加载表-内存不足
我有Ios 具有标识符的多个自定义单元格-重新加载表-内存不足,ios,uitableview,memory-management,Ios,Uitableview,Memory Management,我有UITableView,它使用自定义单元格。总共有5种不同类型的单元标识符 I nib文件相关-CustomCell.h和.m文件。它提供了几个标签和图像 在storyborad中,我创建了5个UITableViewCell,并使用该CustomCell.h创建了子类,但标识符不同。每个单元格都可以使用CustomCell.h 每次我使用[self.tableview reloadData]它在内存中创建新单元格 CustomeCell无法退出队列,这会导致内存不足,最终导致应用程序崩溃。这
UITableView
,它使用自定义单元格。总共有5种不同类型的单元标识符
I nib文件相关-CustomCell.h
和.m
文件。它提供了几个标签和图像
在storyborad中,我创建了5个UITableViewCell
,并使用该CustomCell.h
创建了子类,但标识符不同。每个单元格都可以使用CustomCell.h
每次我使用[self.tableview reloadData]代码>它在内存中创建新单元格
CustomeCell无法退出队列,这会导致内存不足,最终导致应用程序崩溃。这是正确的吗
每次[self.tableview重载数据]代码>调用,新的单元添加到内存中,而不是重用它们。如何释放旧电池?
[使用图像更新]
具有不同标识符的客户单元格的视图内控制器表视图
其中一个像下面这样。
TableView行
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
NSString *identifier = [self calculateIdentifier:indexPath.row];// This will retrun Identifier @"LabelCell" etc.
ControlCell *cell = (ControlCell *)[tableView dequeueReusableCellWithIdentifier:identifier];
cell.questionLabel.text = [self calculateQue:indexPath.row];
cell.answerLabel.text = [self calculateAns:indexPath.row];
return cell;
}
明显增加内存和应用程序崩溃是不好的。您的表应该重用已在内存中分配的现有单元格。这就是我们的观点。如果您共享了表的cellforrowatinexpath
方法以及视图控制器的.m文件的其余部分,可能会有所帮助。谢谢!我会更新更多信息@Aaron我有关于CustomeCell nib、Storyboard tableview和cellForRowAtIndexPath方法的更新问题!您正在将什么加载到该web视图中?如何加载图像?与cell.myImageView=[Self-getImage:indexPath.row];//从数据库返回图像:但这仅适用于需要图像的相关单元格。目前我甚至没有webview上的数据。然而,它很可能是一些自定义html代码。