Entiendo que UITableView
llamará al método -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
para obtener cada una de las celdas para la vista de tabla. Supongamos que tengo mi fuente de datos en Internet y tengo que dar cuenta de la latencia. ¿Cuál será la mejor manera de "detener" que se llame este método? ¿Debería bloquearse en una bandera booleana en la aplicación? ¿Debo simplemente llamar al cellForRowAtIndexPath
nuevamente desde mi aplicación?¿Cómo detener la descarga de UITableView hasta que se hayan obtenido los datos?
No estoy seguro de cuándo se llama la función, es decir, con qué frecuencia el UITableView
se "refresca" a sí mismo. ¡Cualquier explicación será útil! ¡Gracias!
gracias por esta respuesta. ¿Cómo establecerías numeberOfRowsInSection más tarde? cuando se llama a reloadData, ¿se invocarán automáticamente cellForRowAtIndex o numberOfRowsInSection? – Ying
Sí, cuando llamas a reloadData, muchas de estas llamadas se realizarán automáticamente. – mahboudz
Otra forma de hacerlo es hacer que su propiedad 'UITableViews.dataSource' se establezca en cero hasta que esté listo para cargarla. Luego lo configura y llama a 'reloadData'. Esto funciona muy bien si solo tiene que esperar a que finalice una solicitud para la carga de la tabla inicial. – zekel