2011-05-02 71 views
0

我正在使用自定義圖像選擇器的應用程序,並嘗試盡我所能,我似乎無法獲取應用程序跑得很對。 Xcode調試器標記以下「線程1:程序接收信號:」SIGABRT「。」模擬器崩潰「[NSMutableArray insertObject:atIndex:]:嘗試在0'處插入零對象」

- (id) init { 
    if ((self = [super init])) { 
     _images = [[NSMutableArray alloc] init]; 
     _thumbs = [[NSMutableArray alloc] init]; 
    } 
    return self; 
} 

- (void)addImage:(UIImage *)image { 
    [_images addObject:image]; 
    [_thumbs addObject:[image imageByScalingAndCroppingForSize:CGSizeMake(64, 64)]]; 
} 

這是在新的調試器上的xcode 4。 在此先感謝。

+4

再次讀取異常。 'image'或'[image imageByScalingAndCroppingForSize:]'爲零。很可能您的圖像縮放方法無法正常工作。 – 2011-05-02 00:19:42

+0

imageByScalingAndCroppingForSize定義在哪裏?如果它返回零,你會得到這個錯誤。正如你將如果圖像是零。 – 2011-05-02 00:19:45

回答

5

其中一個對象是零。以下代碼將幫助您發現哪一個:

- (void)addImage:(UIImage *)image 
{ 
    if (image) 
    { 
     [_images addObject:image]; 
    } 
    else 
    { 
     NSLog(@"image is nil"); 
    } 

    UIImage *newImage = [image imageByScalingAndCroppingForSize:CGSizeMake(64, 64)]; 
    if (newImage) 
    { 
     [_thumbs addObject:newImage]; 
    } 
    else 
    { 
     NSLog(@"newImage is nil"); 
    } 
} 
相關問題