J'essaie d'ajouter une nouvelle cellule à une tableview, et d'afficher une alerte avec un UITextField pour permettre à l'utilisateur d'entrer le titre qu'il souhaite donner à la nouvelle cellule. J'ai le code pour faire apparaître une alerte avec un UITextField quand le bouton "+" est pressé, et le code pour ajouter une nouvelle cellule, mais je ne sais pas comment obtenir le texte de l'UITextField pour l'insérer dans le titre de la cellule .Comment obtenir du texte à partir de UITextField dans un UIAlertView
C'est mon code pour faire apparaître l'alerte:
UIAlertView* alertPopUp = [[UIAlertView alloc] init];
[alertPopUp setDelegate:self];
[alertPopUp setTitle:@"Enter event title"];
[alertPopUp setMessage:@" "];
[alertPopUp addButtonWithTitle:@"Cancel"];
[alertPopUp addButtonWithTitle:@"OK"];
UITextField * eventNameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)];
[eventNameField setBackgroundColor:[UIColor whiteColor]];
[alertPopUp addSubview:eventNameField];
[alertPopUp show];
et mon action alertView est:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
NSString *buttonTitle=[alertView buttonTitleAtIndex:buttonIndex];
if([buttonTitle isEqualToString:@"Cancel"]) {
return;
}
else if([buttonTitle isEqualToString:@"Ok"]) {
}
}
Que puis-je faire pour obtenir le texte de eventNameField quand "Ok" est pressé et l'ajouter à un mutablearray nommé eventList? Merci!
Cela fonctionnera dans la version iOS actuelle, mais pourrait être cassé dans une future version si elles changent le nombre de sous-vues dans un UIAlertView. C'est une bonne idée cependant. – DHamrick
Vous pouvez vérifier la classe de l'objet retourné, si c'est de la classe UITextField qu'il devrait être votre UITextField (si Apple n'en ajoute pas un dans le futur SDK :) – Ladislav