我試圖使用Xcode更好。我打開了AllExceptions斷點。當我的應用程序崩潰,我看到:在Xcode中調試未捕獲的異常
*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 1 beyond bounds [0 .. 0]'
*** First throw call stack:
(0xbb8052 0x209cd0a 0xba4db8 0x2255f2 0xc2439 0x12a5e0f 0x12a6589 0x146bfb1 0x147617c 0x12938e1 0x1290602 0x129b211 0x129b23f 0xc16a6 0x138a4c 0x138852 0x14d0e39 0x14d0143 0x14d13cf 0x14d3a31 0x14d398c 0x14cc3e7 0x1234812 0x1234ba2 0x121b384 0x120eaa9 0x28d3fa9 0xb8c1c5 0xaf1022 0xaef90a 0xaeedb4 0xaeeccb 0x28d2879 0x28d293e 0x120ca9b 0x265c 0x25c5)
terminate called throwing an exception(lldb)
在LHS,當我在看不同的線程,我沒有看到任何真正有意義。我看到一些CFRunLoop的東西,但我沒有看到任何「正常」的方法名稱,如UITableView委託/數據源方法或我自己的方法。我想知道當我的應用程序崩潰時是否有更豐富的堆棧跟蹤,而不是十六進制的東西。我知道我可以在每個地方設置斷點我正在訪問陣列我想我有一個問題,因爲我基本上只是試圖用我們特定的數據源有一個類似手風琴的tableview,但我想知道是否有更快通過查看Xcode中的有用內容。謝謝!
搜索您在代碼中所做的任何循環,並檢查是否將索引指向我們的邊界。 你有一個數組只有一個對象,你調用array [1] – 2013-02-21 22:16:32
作爲我的經驗,我認爲在xcode中有任何工具可以幫助你。如果你在設備上運行,你可以看到管理器中的日誌,在那裏你可能會更加有用信息 – 2013-02-21 22:19:13