您的位置:首页 > 其它

DTGridView使用碰到崩溃问题解决

2012-10-18 22:39 218 查看
在项目中用到类似照片墙的表格实现,在网上找到DTGridView的开源实现,经过修改,达到预期效果,项目用的arc,但是DTGridView代码里没有,利用系统工具做了转换。在超出一屏时,复用旧DTGridViewCell单元格的时候,会崩溃,一直没有仔细查找原因。知道昨天,对DTGridView实现,重新理清了,知道为什么崩溃,是因为arc转换的时候,对原来的retain删掉了,现在变成了

for (DTGridViewCell *c in freeCells) {
if ([c.identifier isEqualToString:identifier]) {

[freeCells removeObject:c];
[c prepareForReuse];
return c;
}
}
c 从数组freeCells移除后,c指向的内存就释放了,造成了崩溃,

所以只需要引入另一个变量即可, DTGridViewCell *retCell = c; [freeCells removeObject:c]; [retCell prepareForReuse];return retCell;即可,问题解决。

retCell;

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: