Für das, was Sie versuchen, die beste Wahl zu tun ist, Ihre View-Controller eine <UITextFieldDelegate>
, stellen Sie Ihre Zelle Textfeld Delegaten selbst zu machen, und dann die textFieldDidEndEditing implementieren: Methode delegieren.
ändern Schnittstellendatei das Protokoll
@interface YourViewController : UIViewController <UITextFieldDelegate>
Dann stellen Sie den View-Controller als Delegierter des relevanten UITextField (s) ...
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
...
yourCustomCell.yourTextField.delegate = self
}
zu übernehmen und schließlich umzusetzen
- (void) textFieldDidEndEditing:(UITextField *)textField.
Diese Methode wird jedes Mal aufgerufen, wenn der Benutzer die Bearbeitung von UITextField beendet, a Wenn Sie einen Verweis darauf übergeben, können Sie auf die Werte zugreifen, eine eventuell erforderliche Validierung durchführen und sie dem Textfeld zuweisen.
das Etikett erstellt Laufzeit? – KingofBliss
Ich konnte nicht verstehen, wo dein Problem ist. Müssen Sie den Text eines UITextFields aktualisieren, und dieses Textfeld befindet sich in einer Zelle, auf die Sie keinen Bezug haben? – AYBABTU
Ja, es wird zur Laufzeit erstellt. In der cellForRowAtIndexPath-Methode übergebe ich einen Wert im Textfeld, der in der Beschriftung in der nächsten Zelle enthalten sein sollte. Der Textfeldwert sollte so bleiben wie er ist, und der Label-Wert sollte von 0 zu etwas wechseln. – Sarah