2016-05-13 55 views
0

我收到以下錯誤:[__NSArrayM addObject:],NIL對象。但不會崩潰,我想知道爲什麼要顯示這個提醒。 這裏是我的代碼錯誤:[__NSArrayM addObject:],NIL對象

NSMutableArray *picturesCounts = [NSMutableArray array]; 
NSMutableArray *bigUrlArray = [NSMutableArray array]; 
NSMutableArray *pitcturesArray = [NSMutableArray array]; 
NSInteger i = 1; 
for (TNHotelPictures *picture in pictures) { 
    NSString *pictureCounts = [NSString stringWithFormat:@"%ld",(long)picture.images.count]; 
    [picturesCounts addObject:pictureCounts]; 
    [pitcturesArray addObject:picture.images]; 

    for (TNHotelDetailPhotoImages *photoImage in picture.images) { 
     [bigUrlArray addObject:photoImage.bigUrl]; 
    } 
    i++; 
} 
NSInteger imageInAllIndex = imageIndex; 
NSMutableArray *imagesCount = [NSMutableArray array]; 
for (NSInteger m = 0; m<i; m++) { 
    imagesCount = pitcturesArray[(typeIndex-(m+1))] ; 
    imageInAllIndex += imagesCount.count; 
} 

NSMutableArray *array = [NSMutableArray array]; 
    for (NSString *url in bigUrlArray) 
    { 
     if (![url isKindOfClass:[NSString class]]) 
     { 
       return; 
     } 
    TNHotelPhoto *photo = [[TNHotelPhoto alloc] initWithImageURL:[NSURL URLWithString:url]]; 
     [array addObject:photo]; 
    } 

TNHotelPhotoSource *source = [[TNHotelPhotoSource alloc] initWithPhotos:array]; 
TNHotelDetailPhotoBrowserViewController *browserVC = [[TNHotelDetailPhotoBrowserViewController alloc] initWithPhotoSource:source WithImageIndex:imageInAllIndex>=0?imageInAllIndex:0 andImageArray:pictures andTypeIndex:typeIndex]; 

[UIManager showViewController:browserVC]; 

}

+0

也許有幫助:http://stackoverflow.com/questions/12908045/nsarray-arraywithobjects-if-nil-is-meant-to-mark-array-end-can-i-do-nil-ni – luk2302

+0

您的代碼做一些非常奇怪的事情。 – Sulthan

回答

0

這意味着該對象已初始化並保持在內存中的參考。它不是NIL

0

見代碼:

for (TNHotelPictures *picture in pictures) { 
    NSString *pictureCounts = [NSString stringWithFormat:@"%ld",(long)picture.images.count]; 
    [picturesCounts addObject:pictureCounts]; 
    [pitcturesArray addObject:picture.images]; 

    for (TNHotelDetailPhotoImages *photoImage in picture.images) { 
     [bigUrlArray addObject:photoImage.bigUrl]; 
    } 
    i++; 
    } 

我認爲你應該檢查是否picture其屬性pictureCountsimagesbigUrl不爲零。

+0

非常感謝你,photoImage.bigUrl應該判斷她是零,因爲 – base

相關問題