Estoy tratando de obtener texto de una vista de alerta y agregarlo a mi matriz mutable para listar en una vista de tabla. Me doy cuenta de que hay una pregunta similar que se publicó hace unos meses, pero no entiendo cómo utilizar la respuesta dada.Obtener texto de UIAlertView
-(IBAction)insert {
UIAlertView* dialog = [[UIAlertView alloc] init];
[dialog setDelegate:self];
[dialog setTitle:@"Enter Name"];
[dialog setMessage:@" "];
[dialog addButtonWithTitle:@"Cancel"];
[dialog addButtonWithTitle:@"OK"];
UITextField *nameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)];
[nameField setBackgroundColor:[UIColor whiteColor]];
[dialog addSubview:nameField];
[dialog show];
[data addObject:[nameField text]];
[mainTableView reloadData];
Sin embargo mi aplicación se bloquea porque dice que estoy tratando de insertar un objeto nulo en el índice 0. ¿Qué estoy haciendo mal?
EDIT: Ok, creo que me falta un método para manejar la alerta. Así que encontré esto:
- (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex {
NSString *buttonTitle=[alertView buttonTitleAtIndex:buttonIndex];
if([buttonTitle isEqualToString:@"Cancel"]) {
return;
}
else if([buttonTitle isEqualToString:@"Ok"]) {
[data addObject:nameField.text];
}
Ahora solo necesito conectar las piezas, pero no estoy seguro de cómo.
Mi aplicación es una aplicación basada en la ventana. ¿Esto importa? – Snowman
@ f-Prime No, no importa. Estamos atravesando la jerarquía de UIAlertView. –
Ok, ¿cómo debería ser mi código completo? ¿Mi método add más tu método clickedButtonAtIndex y debería funcionar? ¿Debo llamar a clickedButtonAtIndex en mi método de agregar? Cuz como está ahora, no está funcionando – Snowman