Paginación UITableView

Mi aplicación tiene células UITableView personalizadas. Quiero mostrar solo una celda a la vez; la celda siguiente debería mostrarse parcialmente. En ScrollView puede configurar isPagingEnabled en YES.

¿Pero cómo puedo hacer arriba en UITableView ?

Gracias

Tenga en count que UITableView henetworkinga de UIScrollView , por lo que puede configurar pagingEnabled en YES en la vista de tabla.

Por supuesto, esto solo funcionará si todas las celdas y la vista de la tabla son de la misma altura.

Si desea tener siempre un inicio de celda en la parte superior de la vista de tabla después de desplazarse, puede usar un UIScrollViewDelegate e implementar algo como esto.

 - (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset { UITableView *tv = (UITableView*)scrollView; NSIndexPath *indexPathOfTopRowAfterScrolling = [tv indexPathForRowAtPoint: *targetContentOffset ]; CGRect rectForTopRowAfterScrolling = [tv rectForRowAtIndexPath: indexPathOfTopRowAfterScrolling ]; targetContentOffset->y=rectForTopRowAfterScrolling.origin.y; } 

Esto le permite ajustar en qué desplazamiento de contenido finalizará una acción de desplazamiento.

No creo que use una UITableView para esto en absoluto.

Creo que usaría una UIScrollView con una gran stack de contenido paginado. Podría rebuild dinámicamente ese contenido en la actividad de desplazamiento, por lo que imita la gestión de memory de UITableView. UIScrollView felizmente hará búsquedas verticales, dependiendo de la forma del marco de su contenido.

En otras palabras, sospecho que es más fácil hacer que un UIScrollView actúe como una tabla que hacer un paginate UITableView como la vista de desplazamiento.