UITableView Footer, deja de flotar sobre el contenido

Me gustaría hacer que mi pie de página UITableView deje de flotar sobre mi contenido, al igual que la actividad predeterminada. Quiero que mi pie de página sea … bueno … un pie de página. Siempre la última vista que se mostrará al final de mi vista de tabla. 🙂

Lo mismo con el encabezado también en realidad.

¿Hay alguna manera fácil de desactivar que flote sobre la vista de tabla mientras se desplaza?

Gracias a todos, no pude encontrar una respuesta en otro lado.

Ok, resulta que si configuras la vista del pie de página a través de blahblahtableView.tableFooterView = someview; , el pie de página no se desplazará con la tabla.

Sin embargo, si crea su pie de página usando viewForFooterInSection , seguirá su vista y se quedará en la parte inferior de la pantalla.

No estoy seguro de por qué no pude encontrar esta respuesta antes. Lo siento todo 🙂

Tiene 2 tipos de pie de página: uno es el pie de página de la sección y el otro es el pie de página .

El pie de página de la sección aparece debajo de cada sección . Por otro lado, el pie de página de la vista de tabla aparece una sola vez al final de la tabla .

No hay modo de 1 clic para desactivar la flotación del pie de página de la sección.

Si desea un “pie de página” que siempre aparece como la última celda de su sección y se soluciona en la parte inferior de la tabla, debe agregar una celda adicional a su sección y siempre tratarla como la última de su sección.

Si solo tiene 1 sección en su vista de tabla, puede usar el pie de tabla para ser su pie de página.

 - (id)init { self = [self initWithStyle:UITableViewStyleGrouped]; //Default is UITableViewStylePlain return self; } 
 self.YOUR_TABLE_VIEW.tableFooterView = YOUR_FOOTER_VIEW; 

Si recibí la pregunta correcta, ¿básicamente quieres arreglar el pie de página / cabecera en su lugar y desplazar todo lo demás? De ser así, podría tener el encabezado y el pie de página como vistas separadas de la vista de tabla, que descansan sobre la vista de tabla en la jerarquía de vista, de modo que cubren el contenido de la vista de tabla.

Si desea que reboten (cuando se desplaza por encima o por debajo de los contenidos) con la vista de tabla, debe realizar un seguimiento del método de la tabla (tableview es una subclase de scrollview, por lo que funciona) - (void)scrollViewDidScroll: y calcule la nueva posición al pie de página o al encabezado allí.

Espero que tengas mi respuesta, he hecho algo similar a esto y funcionó (quería que el tipo de “Liberar para actualizar” en la parte superior de la tabla)

Estaba teniendo un problema similar. Estaba usando solo un pie de página para indicar el número de celda en la tabla al pie de la misma. Pero no estaba desplazándose con los paneles de la mesa como esperaba (estaba visible en todo momento en la parte superior de la mesa hasta que llegué al fondo donde rebota).

Mi solución para superar esto fue crear 2 secciones, una contiene las celdas de la tabla y otra vacía PERO con un encabezado. Este encabezado mostrará el contador y se comportará como yo desee (para permanecer en la parte inferior de la tabla en todo momento en lugar de superponer las celdas).

La solución recomendada de agregar una celda ficticia en la parte inferior no era útil en mi caso, ya que estaría bordeada con la tabla de borde con cable y no quería eso.

Espero que esto ayude

Consulte mi respuesta aquí, https://stackoverflow.com/a/41816730/1553351 . El código hace exactamente lo que describiste en tu pregunta

#pragma mark – Hay dos opciones para hacerlo –

  1. Utilice delegado UITableView

    efecto: pie de página flotante en una vista de tabla

 -(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{ return HEIGHT; } -(UIView*)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{ return FOOTERVIEW } 
  1. Usar setter de la vista de tabla

    efecto: Adjunto en la parte inferior de la última celda

 theTableView.tableFooterView = YOURFOOTERVIEW // Do not set this delegate // or you would get a extra blank at the bottom of the table // -(CGFloat)tableView:(UITableView *)tableView // heightForFooterInSection:(NSInteger)section{ // return HEIGHT; // }