在iphone开发中删除UItableviewcell子视图时出现问题

时间:2011-01-04 12:18:08

标签: iphone objective-c uitableview

我正在使用以下代码从UItableviewcell中移除子视图以清除之前的子视图,然后再添加新的子视图

if ([cell.contentView subviews]) {

   for (UIView *subview in [cell.contentView subviews]) {

    [subview removeFromSuperview];
    }
}

问题在于其中一个子视图是UIImageView对象,因此在删除这些imageview(子视图)后,我的应用程序崩溃了。我甚至无法保持它,因为多个Imageviews堆叠使应用程序更重,应用程序最终会引发内存级别警告和崩溃。

提前致谢

1 个答案:

答案 0 :(得分:0)

您不应该删除所有子视图。你不知道他们来自哪里。相反(如果您必须删除子视图)请保留您添加的所有子视图中的NSMutableArray。然后,当您想要删除它们时,只需遍历该列表并调用removeFromSuperview,然后清除您的数组。

如果不创建视图,则不应删除其子视图。我以前被烧过。你不知道你添加了哪些,以及之前添加了哪些。您可以轻松删除滚动条,披露指标和其他重要事项。