Ben bir URL'den bir görüntü yükler bir iPad uygulamasının yazmaya çalışıyorum URL'den UIImage kullanarak resim yüklerken.Önemli gecikme uyumsuz
url = [NSURL URLWithString:theURLString];
NSData *data = [NSData dataWithContentsOfURL:url];
img = [[UIImage alloc] initWithData:data];
[imageView setImage:img];
[img release];
NSLog(@"Image reloaded");
o zaman uyumsuz değil yük resmin websever yavaşsa kilitlemek Uygulamamı neden olacaktır böylece kod Bütün bir operasyon olarak NSOperationQueue ekleniyor: Aşağıdaki görüntü yükleme kodunu kullanıyorum. NSLog satırını ekledim, böylece bu kod çalıştırıldığında konsolda görebiliyordum.
Uygulamanın kodun çalışmasını bitirdikten yaklaşık 5 saniye sonra uygulamamın güncellendiğini sürekli olarak fark ettim. Ancak, bu kodu NSOperationQUeue ürününe koymadan kullanabiliyorsam, görüntüyü hemen hemen günceller.
Gecikme yavaş bir web sunucusundan kaynaklanmıyor ... Resim URL'sini Safari'de yükleyebilirim ve yüklemek için bir saniyeden daha az sürüyor ya da NSOperationQueue olmadan aynı kodla yükleyebilirim. çok daha hızlı yüklenir.
Görüntüm görüntülenmeden önce gecikmeyi azaltmanın bir yolu var mı, ancak bir NSOperationQueue kullanmaya devam edilsin mi?
teşekkür Tommy için! Bu gece bir bakacağım ve bana anlattığın şeyden nereden alabileceğimi göreceğim.Aslında, bu sabah Coacoa'daki görüntüleri indirmenin farklı yollarını okuyordum ve NSUrlRequest ve NSURLConnection kullanarak tüm resim işleme kodunu yeniden yazdığımda, görüntüyü beklediğim gibi yüklediğimi kendi kendime keşfettim. Yazdığım yeni yöntemi mi kullanacağımı ya da bana gösterdiğiniz kodun kullanıp kullanamayacağına hala emin değilim, ancak seçeneklerin mükemmel olması ve her iki yolla yazılması iyi bir öğrenme deneyimiydi. Yardımınız için tekrar teşekkürler ve benim gibi yeni başlayan bir çocukla tanıştığınız için teşekkürler! :) – Jackson
Bu arada, bu soruyu okuyan başka biri varsa, bu makaleyi NSUrlRequest tabanlı bir görüntü yükleyici için çok yararlı buldum. http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/URLLoadingSystem/Tasks/UsingNSURLConnection.html – Jackson