Ho un'applicazione in cui devo rimuovere una vista dallo stack di un UINavigationController e sostituirla con un'altra. La situazione è che la prima visualizzazione crea un elemento modificabile e quindi si sostituisce con un editor per l'elemento. Quando eseguo la soluzione ovvia nella prima vista:
MyEditViewController *mevc = [[MYEditViewController alloc] initWithGizmo: gizmo];
[self retain];
[self.navigationController popViewControllerAnimated: NO];
[self.navigationController pushViewController: mevc animated: YES];
[self release];
Ottengo un comportamento molto strano. Di solito viene visualizzata la visualizzazione dell'editor, ma se provo a utilizzare il pulsante Indietro sulla barra di navigazione ottengo schermate aggiuntive, alcune vuote e alcune semplicemente incasinate. Anche il titolo diventa casuale. È come se la pila di navigazione fosse completamente chiusa.
Quale sarebbe un approccio migliore a questo problema?
Grazie, Matt