UITableView
numaralı telefondan bazı metin ve resimler gösteriyorum. Görüntü ilk indirilir. Resim indirilmeden önce, resmin boyutunu bilmediğimden, başlangıçta bir sabit boyutta UIImageView
koydum. Ve görüntü indirildiğinde, UIImageView
'u yeniden boyutlandırıyorum.Görüntü yüklemelerinden sonra hücre boyunu güncelleme
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// Download image
dispatch_async(dispatch_get_main_queue(), ^{
// UIImageView resizing
});
});
Bütün bunlar cellForRowAtIndexPath
olur.
Karşılaştığım sorunlar şunlardır:
1. Hücrenin yüksekliğini nasıl güncelleştiririm? Tek bir hücrede birçok görüntü olabileceğini düşünerek. Bu yüzden, bir indirme işleminin üstündeyken alt resmin konumunu değiştirmem gerekiyor.
2. UITableView
beginUpdates
ve endUpdates
kullanmayı denedim, ancak bu, zayıf bir kullanıcı deneyimi sunan hücrenin üstüne kaydırılır.
Bu, UI'nin reloadData üzerinde nasıl göründüğüdür. indirilecek 5 görüntüleri vardır: UI experience after UITableView reloadData
'beginUpdates' ve' endUpdates' aslında bu durumda etkili değildir * Grup içinde reloadData'yi çağırmamalısınız * belgelerin olduğunu belirtir. – vadian
'reloadData' denediniz mi? –
@HarikrishnanT: Evet. Kötü UI deneyimi verir. – Nitish