1

我在我的 iPhone 4S 上运行我的应用程序,我正在使用自定义表格视图控制器和自定义表格视图单元格,当我将表格视图向上滑动到空白处并同样向下滑动到空白处时,我得到了内存泄漏,请参见附图 在此处输入图像描述

我似乎无法确定问题出在哪里,或者即使是导致问题的细胞。

我有一个 SeasonTableViewController,

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath

{


static NSString *CellIdentifier = @"SeasonTableViewCell";

//SeasonTableViewCell *cell = (SeasonTableViewCell*)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
SeasonTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
NSLog(@"%@",[tableView dequeueReusableCellWithIdentifier:CellIdentifier]);
if(cell==nil)
{
    NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"STableView" owner:self options:nil];

    //cell = [[[SeasonTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier]autorelease];

    cell = (SeasonTableViewCell*)[nib objectAtIndex:0];
}

Season *season = [seasonTableArray objectAtIndex:[indexPath row]];

cell.label1.text = [NSString stringWithFormat:@"%@",[season season_title]];

cell.contentView.backgroundColor = [UIColor redColor];


return cell;
}

这是 NSLog@"%@",[tableview dequeResuableCellWithIdentifier:.....] 上 NSLog 的输出;

2012-05-31 11:26:10.799 myTVApp[1462:707] (null)
2012-05-31 11:26:10.804 myTVApp[1462:707] (null)
2012-05-31 11:26:10.809 myTVApp[1462:707] (null)
2012-05-31 11:26:10.813 myTVApp[1462:707] (null)
2012-05-31 11:26:10.817 myTVApp[1462:707] (null)
2012-05-31 11:26:11.185 myTVApp[1462:707] <SeasonTableViewCell: 0xfe24da0; baseClass =       UITableViewCell; frame = (0 44; 320 44); autoresize = W; layer = <CALayer: 0xfe24860>>
2012-05-31 11:26:11.187 myTVApp[1462:707] <SeasonTableViewCell: 0xfe25730; baseClass = UITableViewCell; frame = (0 132; 320 44); autoresize = W; layer = <CALayer: 0xfe244a0>>
2012-05-31 11:26:11.189 myTVApp[1462:707] (null)
2012-05-31 11:26:11.191 myTVApp[1462:707] (null)
2012-05-31 11:26:11.194 myTVApp[1462:707] (null)

在上面.. 我有 5 个自定义 SeasonTableViewCells 显示在 myTableView 中,其余的只是正常的白色单元格,其中没有任何内容,

下面是 SeasonTableViewCell,

#import "SeasonTableViewCell.h"

@implementation SeasonTableViewCell
@synthesize label1;
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
    // Initialization code
}
return self;
}

- (void)setSelected:(BOOL)selected animated:(BOOL)animated
{
[super setSelected:selected animated:animated];

// Configure the view for the selected state
}  

-(void)dealloc
{
[super dealloc];
[label1 release];
//[label2 release];
}

任何指示帮助表示赞赏,并在此先感谢您!

4

1 回答 1

1

这是最新 iOS 中的一个已知错误。在开发者论坛上查看这个帖子(在帖子底部附近,一位 Apple 员工解释道)。

于 2012-05-31T11:18:00.630 回答