iOS Debuggen von Abstürzen ohne Stack-Trace wie: [__NSArrayM objectAtIndex:]: index 0 Grenzen für leere Array?

8

Ich versuche, einen modalen Ansichtscontroller zu schließen, und erhalte den folgenden Fehler:

* Beenden der App aufgrund der nicht abgefangenen Ausnahme 'NSRangeException', Grund: '* - [__ NSArrayM objectAtIndex:]: Index 0 über Grenzen für leeres Array'

An einem Punkt habe ich 4 Stunden damit verbracht, einen solchen Fehler zu debuggen. Kann mir jemand sagen, ob es eine Möglichkeit gibt, Stack-Traces für solche Fehler zu betrachten, um zu verstehen, welches Objekt den falschen Zugriff verursacht hat?

Danke!

    
Alex Stone 19.12.2011, 23:37
quelle

2 Antworten

13

In Xcode 4 können Sie im Breakpoint-Editor einen Ausnahme-Breakpoint setzen. Jedes Mal, wenn eine Ausnahme ausgelöst wird (oder abhängig davon, wie Sie sie eingerichtet haben), wird Ihre Anwendung in der Zeile angehalten, die die Ausnahme ausgelöst hat.

    
Mark Adams 19.12.2011, 23:40
quelle
22

Wenn Sie im Debugger ausgeführt werden, sollten Sie absolut in der Lage sein, die tatsächliche Zeile zu sehen, auf die die Ausnahme geworfen wird.

Fügen Sie einen Ausnahme-Haltepunkt hinzu, indem Sie oben im linken Bereich auf die Registerkarte Haltepunkte klicken und dann unten links auf das Pluszeichen klicken. Fügen Sie einen Ausnahmehaltepunkt hinzu.

    
Grady Player 19.12.2011 23:41
quelle

Tags und Links