2011-07-30 89 views
0
*** Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSMutableArray objectAtIndex:]: index 18 beyond bounds [0 .. 16]' 
*** Call stack at first throw: 
(
    0 CoreFoundation      0x02b11b99 __exceptionPreprocess + 185 
    1 libobjc.A.dylib      0x02c6140e objc_exception_throw + 47 
    2 CoreFoundation      0x02b07695 -[__NSArrayM objectAtIndex:] + 261 
    3 MyPocket       0x0005efe9 -[loginLocalitems tableView:didSelectRowAtIndexPath:] + 638 
    4 UIKit        0x00be9a48 -[UITableView _selectRowAtIndexPath:animated:scrollPosition:notifyDelegate:] + 1140 
    5 UIKit        0x00be032e -[UITableView _userSelectRowAtIndexPath:] + 219 
    6 Foundation       0x0037821a __NSFireDelayedPerform + 441 
    7 CoreFoundation      0x02af2f73 __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ + 19 
    8 CoreFoundation      0x02af45b4 __CFRunLoopDoTimer + 1364 
    9 CoreFoundation      0x02a50dd9 __CFRunLoopRun + 1817 
    10 CoreFoundation      0x02a50350 CFRunLoopRunSpecific + 208 
    11 CoreFoundation      0x02a50271 CFRunLoopRunInMode + 97 
    12 GraphicsServices     0x03f4e00c GSEventRunModal + 217 
    13 GraphicsServices     0x03f4e0d1 GSEventRun + 115 
    14 UIKit        0x00b84af2 UIApplicationMain + 1160 
    15 MyPocket       0x000023d2 main + 84 
    16 MyPocket       0x00002375 start + 53 
    17 ???         0x00000001 0x0 + 1 
) 
terminate called after throwing an instance of 'NSException' 

上述數組的原因是什麼?這種崩潰只有當我選擇表格視圖的下細胞似乎任何人都請幫助桌面單元格中的崩潰

+2

安置自己的代碼'didSelectRowAtIndexPath方法:' – WrightsCS

回答

3

此錯誤是告訴你,你的NSMutableArray裏面有隻從0到16的對象。當您滾動到表的底部,然後選擇你想在指數高於16訪問數組中的一個對象,以便嘗試檢查,如果您正在使用表的數組正確填寫較低的細胞和你以後不會從中刪除某些東西。

3

您是從可變數組加載數據? 檢查如果陣列真的有18個元素。 或者如果你給一個數比numberOfRows切入口方法的實際行計數

這是一個範圍例外更大:

index 18 beyond bounds [0 .. 16] 

正如你看到的,它只有當你點擊下方的項目

發生