SORU
25 Kasım 2008, Salı


[Uİİmage imageNamed...] ve [Uİİmage imageWithData...] arasındaki fark?

Dosya sisteminden başvurumu içine bazı resimler yüklemek istiyorum. 2. bunu yapmak için kolay bir yolu var:

[UIImage imageNamed:fullFileName]

ya da:

NSString *fileLocation = [[NSBundle mainBundle] pathForResource:fileName ofType:extension];
NSData *imageData = [NSData dataWithContentsOfFile:fileLocation];

[UIImage imageWithData:imageData];

Çok az bir kod çünkü ilkini tercih ediyorum, ama bazı insanlar görüntü önbelleğe ve bu yöntem daha fazla bellek kullanır söyleyen görmedim? Diğer çoğu forumlarda insanlara güvenmiyorum beri, orada hiçbir pratik fark var ve hangisi Yani eğer burada soru sor, dedim 'daha iyi'?

Benim app Nesne Ayırma aleti kullanarak profilleme denedim, ve sadece bir iPhone simülatörü, ve kendisi de denedim ama herhangi bir pratik fark göremiyorum.

CEVAP
25 Kasım 2008, Salı


Görüntü ile ne yaptığına bağlı. imageNamed: yöntemi önbellek görüntüsü yok, ama birçok durumda bellek kullanımı ile ilgili yardım edecek. Eğer görüntüleme için 10 kez görüntü birlikte bir tablo içinde bir metin ile yük görünüm, örneğin, Uİİmage sadece 10 ayrı nesneleri ayırmak yerine bir bellek bu görüntüyü tek bir temsili devam edecek. Diğer taraftan, eğer çok büyük bir resim ve sen değilsin yeniden kullanarak, istediğin görüntüyü yüklemek için bir veri nesnesi emin olmak için kaldırıldı bellek bittiğinde o zaman.

Eğer herhangi bir büyük görüntü yok eğer doğru değilse, bu konuda endişe olmaz. Bir sorun (ve Nesne Ayırma kontrol etmek için şeref yerine öncelikli optimize) görmedikçe, önemsiz bellek üzerindeki gelişmeleri kod az hatları seçerdim.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BrandonHarrisWalker

    BrandonHarri

    27 Kasım 2006
  • jagadambarecords

    jagadambarec

    13 AĞUSTOS 2008
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008