2012-08-28 1 views
0

Lorsque je fais défiler dans UITableView, rateView est == nul et de la mémoire est allouée pour chaque cellule. Est-ce une fuite de mémoire? Ou ARC libère-t-il automatiquement la mémoire lorsque la cellule défile sur l'écran et alloue une nouvelle mémoire pour le 'rateView' de la cellule suivante?Fuite de mémoire dans les layoutsubviews

Ce code est situé dans layoutSubviews de ma ma cellule personnalisée:

if (_rateView == nil) { 
    _rateView = [[DYRateView alloc] initWithFrame:CGRectMake(150, 7, 175, 50) fullStar:[UIImage imageNamed:@"StarFullLarge.png"] emptyStar:[UIImage imageNamed:@"StarEmptyLarge.png"]]; 
    _rateView.padding = 8; 
    _rateView.alignment = RateViewAlignmentRight; 
    _rateView.editable = YES; 
    _rateView.delegate = self; 
    [_clearRateViewBg addSubview:_rateView]; 
} 
_rateView.rate = _userRating.intValue; 

Répondre

0

Vous devez déclarer _rateView aussi fort

Et vous devez vous assurer que vous réutilisez la cellule correctement.