filas duplicadas en tableview en uitableviewcell

He encontrado algunos mensajes que son similares a mi problema pero no son exactamente los mismos.

En mi aplicación, el usuario puede navegar entre varias uitableviews para profundizar en el resultado deseado. Cuando un usuario avanza, luego retrocede, luego avanza, etc., se nota que las filas se están redibujando / reescribiendo y el texto se vuelve más y más nítido.

He encontrado que en algunas de las publicaciones esto puede estar relacionado con la forma en que estoy creando las filas, usando un uilable dentro delcellforrowatindexpath método.

¿Hay algo que deba hacer para que las filas no se vuelvan a rellenar / volver a dibujar cada vez que un usuario avanza o retrocede entre las vistas de tabla? ¿Necesito agregar algo al código a continuación o agregar algo al método viewwillappear (actualmente hay un 'reloaddata' en el viewwillappear para la tabla pero no parece ayudar)?

Aquí está mi 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;
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta