Исключение NSRangeException для NSMutableArray - PullRequest
0 голосов
/ 10 ноября 2011

Я получаю следующую ошибку, пожалуйста, помогите мне с решением.Мой xcode прерывается со следующей ошибкой

Terminating app due to uncaught exception 'NSRangeException', reason: '*** -[NSMutableArray objectAtIndex:]: index 0 beyond bounds for empty array'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x0140a5a9 __exceptionPreprocess + 185
    1   libobjc.A.dylib                     0x0155e313 objc_exception_throw + 44
    2   CoreFoundation                      0x014000a5 -[__NSArrayM objectAtIndex:] + 261
    3   UMMCelebrity                        0x00043903 -[UMMFlickrView photoGallery:urlForPhotoSize:atIndex:] + 115
    4   UMMCelebrity                        0x0004a9d6 -[FGalleryViewController createGalleryPhotoForIndex:] + 422
    5   UMMCelebrity                        0x0004a5ac -[FGalleryViewController loadThumbnailImageWithIndex:] + 172
    6   UMMCelebrity                        0x0004a189 -[FGalleryViewController preloadThumbnailImages] + 281
    7   UMMCelebrity                        0x00046f84 -[FGalleryViewController loadView] + 2132
    8   UIKit                               0x0029d00e -[UIViewController view] + 56
    9   UMMCelebrity                        0x00043050 -[UMMFlickrView pushphotoview] + 192
    10  UMMCelebrity                        0x000446c6 -[UMMFlickrView connection:didReceiveData:] + 2230
    11  Foundation                          0x00996835 _NSURLConnectionDidReceiveData + 159
    12  CFNetwork                           0x033bde72 _ZN19URLConnectionClient21_clientDidReceiveDataEPK8__CFDataPNS_26ClientConnectionEventQueueE + 262
    13  CFNetwork                           0x0348a6b3 _ZN19URLConnectionClient26ClientConnectionEventQueue33processAllEventsAndConsumePayloadEP20XConnectionEventInfoI12XClientEvent18XClientEventParamsEl + 247
    14  CFNetwork                           0x0348a9cf _ZN19URLConnectionClient26ClientConnectionEventQueue33processAllEventsAndConsumePayloadEP20XConnectionEventInfoI12XClientEvent18XClientEventParamsEl + 1043
    15  CFNetwork                           0x033b5c80 _ZN19URLConnectionClient13processEventsEv + 100
    16  CFNetwork                           0x033b5acf _ZN17MultiplexerSource7performEv + 251
    17  CoreFoundation                      0x013eb8ff __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
    18  CoreFoundation                      0x0134988b __CFRunLoopDoSources0 + 571
    19  CoreFoundation                      0x01348d86 __CFRunLoopRun + 470
    20  CoreFoundation                      0x01348840 CFRunLoopRunSpecific + 208
    21  CoreFoundation                      0x01348761 CFRunLoopRunInMode + 97
    22  GraphicsServices                    0x018e21c4 GSEventRunModal + 217
    23  GraphicsServices                    0x018e2289 GSEventRun + 115
    24  UIKit                               0x001fbc93 UIApplicationMain + 1160
    25  UMMCelebrity                        0x00001d29 main + 121
    26  UMMCelebrity                        0x00001ca5 start + 53
)
terminate called after throwing an instance of 'NSException'

Ответы [ 4 ]

0 голосов
/ 10 ноября 2011

Может быть при 4-м щелчке ничего не вставляется в массив, я не уверен, так как понятия не имею, что вы пытаетесь сделать. Если вы можете добавить строку кода, которая добавляет объект в ваш массив, мы могли бы помочь вам.

Эта ошибка происходит, потому что массив наверняка пуст.

0 голосов
/ 10 ноября 2011

Очевидно, что в -[UMMFlickrView photoGallery:urlForPhotoSize:atIndex:] есть пустой NSMutableArray, и вы отправили его objectAtIndex: с аргументом 0.

0 голосов
/ 10 ноября 2011

Это означает, что ваш NSMutableArray пуст.Я думаю, что вы не выделяли память для NSMutableArray.Прочитайте эту ссылку, это может быть полезно для вас.http://www.roseindia.net/answers/viewqa/Mobile-Applications/14614-NSMutableArray-Example-Code.html

0 голосов
/ 10 ноября 2011

Вы звоните objectAtIndex: с аргументом 0 на пустом NSMutableArray.

[NSMutableArray objectAtIndex:]: index 0 beyond bounds for empty array

Если вы знаете, что NSMutableArray может быть пустым, вам следует подумать о вызове count, чтобы проверить, действительно ли он содержит какие-либо элементы, прежде чем пытаться получить доступ к элементам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...