2011-11-10 17 views
0

以下のエラーが発生しましたので解決策を教えてください。私のXcodeのは、あなたが空のNSMutableArrayに引数0objectAtIndex:を呼んでいる、次のエラーNSMutableArrayのNSRangeException例外

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' 

答えて

0

で中止されます。

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

あなたはNSMutableArrayが空であることを知っている場合は、それが実際の要素にアクセスしようとする前に、すべての要素が含まれないかどうかを確認するために、それにcountを呼び出して検討すべきです。

+0

NSMutableArrayは空ではありません.URL(ボタンをクリックすると画像が含まれています)が塗りつぶされますが、4回目のクリックでコードが中止されます。私に解決策を教えてもらえますか? – priya

0

もちろん、そこ-[UMMFlickrView photoGallery:urlForPhotoSize:atIndex:]に空NSMutableArrayをだとあなたはあなたのNSMutableArrayのが空であることを意味し、引数0

+0

url = [networkImages_w objectAtIndex:index];私はこの時点で打ち切られている。私はここに何を置くべきですか教えてください? – priya

0

とそれにobjectAtIndex:を送りました。 NSMutableArrayのメモリを割り当てなかったと思います。このリンクを読むと、役に立つかもしれません。 http://www.roseindia.net/answers/viewqa/Mobile-Applications/14614-NSMutableArray-Example-Code.html

+2

メモリが割り当てられていない場合、エラーは完全に異なります。 – rid

+0

メモリが配列に割り当てられます。配列が3回満たされています(3つのボタンのクリックが適切に機能し、4回目のクリックで終了します) – priya

+0

コードを投稿してください。 –

0

は4クリックで何も配列の中に押し込まれていないことが、私はあなたがdo.Ifしようとしているもの見当がつかないとして、あなたの配列にオブジェクトを追加するコード行を追加することができますかわかりません私たちはあなたを助けることができました。

このエラーは、配列が空であるために発生しています。