我收到了太多对象发送-自动释放了太多次,我的iPhone应用程序此内存泄漏和不知道如何解决它http://screencast.com/t/fPzMNewvq以上是截屏一样。
SAAdvertiseCell有很多被释放的对象,所以怎么可能找到其确切的问题是什么? 谢谢
我收到了太多对象发送-自动释放了太多次,我的iPhone应用程序此内存泄漏和不知道如何解决它http://screencast.com/t/fPzMNewvq以上是截屏一样。
SAAdvertiseCell有很多被释放的对象,所以怎么可能找到其确切的问题是什么? 谢谢
起初,你为什么不重用的小区?
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
Cell* cell = [tableView dequeueReusableCellWithIdentifier:cell_id];
if(!cell)
{
cell = // create new cell;
}
// configure cell
return cell;
}
而对于您的问题:似乎initWithData:
已经返回一个自动释放的对象,那么你再派自动释放。 所以检查的方法来发现问题。
对于创建自定义的UITableViewCell的,写这样的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"MyTableViewCellId";
MyTableViewCell *cell = (MyTableViewCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
NSArray *topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"MyTableViewCell" owner:self options:nil];
cell = [topLevelObjects objectAtIndex:0];
}
// write your code to customize cell or providing data content
return cell;
}
希望这将帮助你解决你的问题