linhas duplicadas na tableview na uitableviewcell
Eu encontrei alguns posts que são semelhantes ao meu problema, mas não exatamente o mesmo.
No meu aplicativo, o usuário pode navegar entre vários uitableviews para detalhar o resultado desejado. Quando um usuário vai para frente, depois para trás, depois para frente, etc, é perceptível que as linhas estão sendo redesenhadas / reescritas e o texto fica mais ousado e mais ousado.
Descobri que, em alguns dos posts, isso pode estar relacionado à maneira como estou criando as linhas, usando um comando dentro docellforrowatindexpath
método.
Existe algo que eu preciso fazer para que as linhas não sejam repovoadas / redesenhadas sempre que um usuário avança e retrocede entre as exibições de tablete? Preciso adicionar algo ao código abaixo ou adicionar algo ao método viewwillappear (atualmente há um 'reloaddata' no viewwill que aparece para a tabela, mas parece não ajudar)?
Aqui está o meu código:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil)
{
cell = [[[UITableViewCell alloc] initWithFrame:CGRectZero reuseIdentifier:CellIdentifier] autorelease];
}
cell.accessoryType = UITableViewCellAccessoryDisclosureIndicator;
UILabel *label = [[[UILabel alloc] init] autorelease];
label.font = [UIFont fontWithName:@"Arial-BoldMT" size:20];
label.frame = CGRectMake(10.0f, 10.0f, 220.0f, 22.0f);
label.textColor = [UIColor blackColor];
label.backgroundColor = [UIColor clearColor];
label.opaque = NO;
label.text = [mapareaArray objectAtIndex:indexPath.row];
[cell.contentView addSubview:label];
CustomCellBackgroundView *bgView = [[CustomCellBackgroundView alloc] initWithFrame:CGRectZero];
bgView.borderColor = [UIColor clearColor];
bgView.fillColor = [UIColor whiteColor];
bgView.position = CustomCellBackgroundViewPositionSingle;
cell.backgroundView = bgView;
return cell;
}