2017-04-09 2 views
0

Ich habe uitableviewcell angepasst, die zwei uitextfields hat. Ich habe einige Daten in Zellen eingegeben. Die Daten werden jedoch entfernt, wenn ich in der Tabellenansicht nach unten blättern. Ich weiß, dass dies passiert, weil die Zelle neu erstellt wurde. Wie kann ich diese eingegebenen Daten behalten? Hier ist der Codeios Daten werden entfernt, wenn Sie die Utitableview scroll

valueTableViewCell*cell=[[valueTableViewCell alloc]init]; 
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:@"valueTableViewCell" owner:cell options:nil]; 
cell = [nib objectAtIndex:0]; 
return cell; 
+1

Mögliche Duplikat [UITableView Zelle/Daten verschwinden] (http://stackoverflow.com/questions/5648191/uitableview-cell-data-disappear) – the4kman

Antwort

1

Sie können Modelle verwenden: beispiels einige in Array gespeicherten Objekte. Sie können Ihre Daten in den Modellen speichern und jedes Mal, wenn Ihre Zelle wiederverwendet wird, sollten Sie Ihre Daten in der Zelle aktualisieren.

Schnell Pseudo-Code:

//someObject: 
@property (strong, nonatomic) NSString *firstString; 
@property (strong, nonatomic) NSString *secondString; 

und in der Klasse mit Tabelle:

@property (strong, nonatomic) NSArray *dataSource; //dataSource -> someObjects 

//... 
//... 
//... 
cell.firstTextField.text = _dataSource[indexPath.row].firstString; 

cell.secondTextField.text = _dataSource[indexPath.row].secondString; 

return cell; 

UPD:

@DaoXingLi ich für Sie schnelles Beispiel gemacht haben. Bitte beachten Sie die link

+0

Danke, aber die Daten in einer Zelle nicht voreingestellt . Ich erstelle leere Zellen. Dann gebe ich Daten in das Textfeld ein. Wenn ich danach die Uta-Ansicht scrolle, sind die Daten verschwunden. –

+0

@DaoXingLi Ich habe ein schnelles Beispiel für Sie gemacht. Bitte beachten Sie die [link] (https://www.dropbox.com/s/ageydmpgksbcgx7/CellsReuseTest.zip?dl=0) –

Verwandte Themen