Sto visualizzando alcuni testi e immagini in un UITableView
. L'immagine viene prima scaricata. Da prima che l'immagine venga scaricata, non conosco la dimensione dell'immagine, quindi inizialmente ho inserito uno UIImageView
di dimensioni fisse. E quando l'immagine viene scaricata, ridimensiono lo UIImageView
.Aggiornamento altezza cella dopo download immagini
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// Download image
dispatch_async(dispatch_get_main_queue(), ^{
// UIImageView resizing
});
});
Tutto ciò avviene in cellForRowAtIndexPath
.
I problemi che sto affrontando sono:
1. Come aggiorno l'altezza della cella? Considerando che ci possono essere molte immagini in una singola cella. Quindi ho bisogno di cambiare la posizione dell'immagine di fondo quando sopra un download.
2. Ho provato a utilizzare UITableView
beginUpdates
e endUpdates
, ma questo scorre verso l'alto della cella dando una scarsa esperienza utente.
Ecco come appare l'interfaccia utente su reloadData. Ci sono 5 immagini da scaricare: UI experience after UITableView reloadData
'beginUpdates' e' endUpdates' non hanno alcun effetto in questo caso in realtà * Non dovresti chiamare reloadData all'interno del gruppo * dice la documentazione. – vadian
Ho provato 'reloadData'? –
@HarikrishnanT: Sì. Fornisce una scarsa esperienza di interfaccia utente. – Nitish