Ich spiele mit dem Schreiben meiner ersten iPhone App; SDK 3.0. Ich habe ein UITextField, und wenn Text in das eingegeben wird, möchte ich den DoubleValue aus dem Textfeld abrufen und einige Berechnungen durchführen und sie in einem UITableView anzeigen.Warum wird TextFieldDidEndEditing: nicht aufgerufen?
Der Delegat für das UITextField übernimmt das UITextFieldDelegate-Protokoll und implementiert sowohl textFieldShouldReturn: als auch textFieldDidEndEditing: methods. textFieldSouldReturn: gibt den First Responder Status zurück, der laut docs auch textFieldDidEndEditing auslösen soll, aber ich sehe nie textFieldDidEndEditing: called.
- (BOOL)textFieldShouldReturn:(UITextField*)theTextField {
if (theTextField == thresholdValue) {
[thresholdValue resignFirstResponder];
}
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField {
[self updateThresholdValue:textField];
}
Es kann sich lohnen, unter Hinweis darauf, dass ich auch versucht, einige der Ereignisse Textfeld an den Delegaten verbindet und das Ereignis Anruf updateThresholdValue mit: direkt, aber das hat nicht funktioniert entweder.
Legen Sie einige NSLogs fest, um sicherzustellen, dass die Methode nie tatsächlich aufgerufen wird. – mk12
Du hast myTextField.delegate = self irgendwo richtig gemacht? – mk12
Ich nehme an, er hat seinen Delegierten korrekt verdrahtet, ansonsten würde textFieldShouldReturn: auch nicht aufgerufen werden. –