2011-09-03 63 views
0

我的應用程序中的一個視圖有一個方法來設置它的'默認'佈局 - setDefaultView。在這種方法中,我循環遍歷子視圖,如果其中一個是ImageView,則將圖像設置爲零。ImageView.image =零應用程序休眠/恢復後崩潰

當我的應用程序最初從XCode啓動時,此工作正常。但是,當我通過按主頁按鈕休眠我的應用程序,然後回到應用程序並觸發setDefaultView,它崩潰在圖像設置爲零的這種方法。

對此可能出錯的任何建議?

的源代碼:

-(void)setDefaultView { 

// Hide all equals labels and images; set all images to nil 
for (UIView *view in [secondScrollerView subviews]) { 

    if ([view isKindOfClass:[UILabel class]]) { 

     UILabel *label = (UILabel *)view; 

     if ([label.text isEqualToString:@"="]) { 
      label.hidden = YES; 
     } 
    } 

    if ([view isKindOfClass:[UIImageView class]]) { 

     UIImageView *imageView = (UIImageView *)view; 
     imageView.hidden = YES; 

     imageView.image = nil; // Crashes here 
    } 
} 

// do other stuff here... 
} 
+0

請將您的'image'設置爲'imageView'的郵政編碼 – Nekto

+0

Nekto - 您的評論足以讓我找到問題。 即使它從未分配過,我也發佈了UIImage。 – slatfats

回答

0

最有可能的是,你設置的imageView.image一個自動釋放的對象。 imageView.image = nil;行將釋放舊圖像,如果它已被釋放,這將是一個問題。

+0

謝謝 - 我手動發佈了它。 Nekto評論我的原始問題後發現了這個錯誤。 – slatfats