Domanda

Il modo più semplice per vedere questo problema sarà quello di eseguire il progetto di esempio qui:

http://drop.io/stackproblem

In sostanza, è un uisplitviewcontroller che può essere commutato tra 2 viste di dettaglio, entrambi i quali sono i controller di navigazione.

Il problema è che si blocca con il seguente errore:

MultipleDetailViews [8531: 207] * Chiusura di applicazione a causa di eccezione non identificata 'NSInvalidArgumentException', la ragione: 'Popovers non possono essere presentati da una vista che non ha una finestra'

Si blocca con questo errore se si utilizza l'applicazione in verticale e si naviga (ancora in verticale) dal primo controllore, al secondo, al primo, al secondo, e poi boom del CRASH utilizzando il controller popover.

Un modo per fermare l'incidente è quello di fermare il caricamento pigro i controllori di navigazione e di caricarli ogni volta fresco, ma questo non è un'opzione per l'applicazione che sto facendo.

Tutte le idee e io possa innamorarmi.

È stato utile?

Soluzione

Provare a utilizzare if (self.view.window! = Nil) appena prima della riga che sta causando l'incidente.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top