我在我的 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];
}
任何指示帮助表示赞赏,并在此先感谢您!