Ho trovato alcuni post simili al mio problema, ma non proprio uguali.righe duplicate in tableview su uitableviewcell
Nella mia app l'utente può navigare tra diverse visualizzazioni di prova per visualizzare il risultato desiderato. Quando un utente va avanti, quindi indietro, poi avanti, ecc., È evidente che le righe vengono ridisegnate/riscritte e il testo diventa più audace e più audace.
Ho trovato che in alcuni dei post questo può riguardare il modo in cui sto creando le righe, utilizzando un uable nel metodo cellforrowatindexpath
.
C'è qualcosa che devo fare in modo che le righe non vengano ripopolate/ridisegnate ogni volta che un utente va avanti e indietro tra le tabelle? Devo aggiungere qualcosa al codice qui sotto o aggiungere qualcosa al metodo viewwillappear (attualmente c'è un 'reloaddata' nel viewwillappear per la tabella ma non sembra essere di aiuto)?
Ecco il mio codice:
- (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;
}
Grazie mille per questo. Grande aiuto Un'ultima domanda al riguardo - Non ho uno sfondo di programmazione quindi non sono sicuro di cosa intendi usando #define nel file di intestazione. Qual è la sintassi per fare questo? L'ho visto prima e ho tentato di inserire "#define kMyTag" nell'intestazione, ma questo non funziona ...Suppongo che tu abbia bisogno di definire kMyTag su un valore ma non sono sicuro di quale sarebbe la sintassi per farlo. Puoi aiutare? – SKayser