Sto cercando di ottenere il testo da una vista di avviso e aggiungerlo alla mia matrice mutabile per elencare in una vista tabella. Mi rendo conto che esiste una domanda simile che è stata pubblicata qualche mese fa, ma non capisco come utilizzare la risposta data.Ottenere testo da 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];
Tuttavia la mia app si blocca perché dice che sto tentando di inserire un oggetto nullo al indice 0. Che cosa sto facendo di sbagliato?
EDIT: Ok penso che mi manca un metodo per gestire la visualizzazione degli avvisi. Così ho trovato questo:
- (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];
}
Ora ho solo bisogno di collegare i pezzi, ma non so come.
La mia app è un'applicazione basata su una finestra. Questo importa? – Snowman
@ f-Prime No, non importa. Stiamo attraversando la gerarchia di UIAlertView. –
Ok, quindi come dovrebbe essere il mio codice completo? Il mio metodo add, più il metodo clickkedButtonAtIndex, dovrebbe funzionare? Devo chiamare clickedButtonAtIndex nel mio metodo di aggiunta? Come è ora, non funziona – Snowman