2011-07-11 52 views
0

我正在從網絡服務器下載圖像(.jpg),然後在UIImageView中將其全屏顯示。在模擬器中圖像顯示正確,但是當我將應用程序加載到iPod(iOS 4.3.2)上時,我得到一個空白頁面。我得到的NSData的圖像從NSURLConnection的背部,然後用這個代碼把它在viewDidLoad中:使用NSURLConnection下載的圖像在模擬器上正確顯示,而不是在iPod上正確顯示

UIImage *map = [UIImage imageWithData:theData]; 
mapView.image = map; 

我MapView的是沒有在Interface Builder一個UIView的圖像設置。我也有一個工具欄沒有顯示在設備上,就像它在模擬器上按預期顯示的UIImageView一樣。有沒有人看過類似的行爲?

+0

有什麼不對您的iPod上的圖像? – sergio

+0

據我所知,它只是不顯示。 – Millec8

+0

圖像有多大?這可能是內存佔用問題嗎? – sergio

回答

0

我不知道問題是什麼,但我放棄了Interface Builder中,並用手添加ImageView的,它現在顯示正確。

0

你會用這段代碼試試嗎?

- (void)viewDidLoad { 
     UIImage *img = [[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://xxxxxxx/xxxx.jpg"]]] retain]; 
     if (img != nil) { 
      mapView.image = img; 
      [img release]; 
    } 
    [super viewDidLoad]; 
} 

這可能是不正常的你,但只是一個try ...

+0

圖像不是零,我不想通過使用同步調用阻止主線程。 – Millec8

0

與ARC嘗試這種情況:

NSURL * URL = [NSURL URLWithString: @ 「http://clasificados.eluniversal.com/imagenes/inmuebles/home/home_inmuebles.jpg」];

UIImage *img = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:url]]; 
if (img != nil) { 
    mapView.image = img; 
    img = nil; 
}