ho provato un paio di risposte su questo sito, ma nessuno di loro sembra mettere in relazione al mio problemaRespingendo entrambe le viste UINavigation e vista modale in una sola volta a livello di codice
Ho un app MasterDetail, che ha due tipi di segues che Sto usando. Quando si preme un pulsante nella vista di dettaglio, viene utilizzato un push-down e viene visualizzata un'altra vista di dettaglio. Nella nuova vista dei dettagli (quella appena accennata) c'è un pulsante che richiama un altro UIView (foglio di modulo) usando un passaggio modale.
Quello che sto cercando di fare è quando l'utente seleziona una riga, un UIAlertView apparirà la visualizzazione di un messaggio, mentre allo stesso tempo (non deve essere allo stesso tempo) respinge l'UIViewController (modale) e torna dal Viewcontroller che è stato inserito. Fondamentalmente, devo essere in grado di eliminare tutti i viewcontrollers, uno modale e uno push (nav) in modo che la vista ritorni alla schermata principale originale con cui hanno iniziato.
Ho il UIAlertView funziona bene e posso ottenere il modal viewcontroller da respingere utilizzando [self.dismissViewControllerAnimated:YES completion:nil];
ma non so come chiudere il prossimo Viewcontroller (che si trova in un controller di navigazione). L'utilizzo di questo: [self.navigationController popToRootViewControllerAnimated:NO];
non funziona.
Qui è dove voglio chiamare la funzione per rimuovere tutte le viste:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:urlWithIDAndChallenge];
NSURLConnection *conn = [[NSURLConnection alloc] initWithRequest:request delegate:self];
UIAlertView *message = [[UIAlertView alloc] [email protected]"Started" message:@"The challenge has begun!" delegate:nil cancelButtonTitle:@"OK!" otherButtonTitles:nil];
[message show]
//right here is where I would normally dismiss the modal VC
//here is where I would like to dismiss all VC
}
Quali versioni iOS stai sostenendo? Se iOS 6 e versioni successive, solo, è possibile utilizzare unwind segues, che lo fanno molto bene. – Rob
@Rob Sto usando iOS6 – CaptJak
Che sensazione quando ho trovato risposta alla mia domanda nella TUA domanda. Molte grazie. –