iphone - framework - objective c vs swift
¿UITableView, hacer que el pie de página permanezca en la parte inferior de la pantalla? (2)
Esta pregunta ya tiene una respuesta aquí:
Tengo un UITableView con un pie de página, lleno de una barra de pestañas en una vista personalizada, hecho con el siguiente código:
- (CGFloat)tableView:(UITableView *)tableView
heightForFooterInSection:(NSInteger)section {
//differ between your sections or if you
//have only on section return a static value
return 49;
}
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {
if(footerView == nil) {
//allocate the view if it doesn''t exist yet
footerView = [[UIView alloc] init];
[footerView addSubview:self.tabBarView];
}
//return the view for the footer
return footerView;
}
Lo que funciona de maravilla, aparte de cuando la tabla tiene menos filas de las que se necesitan para llenar la pantalla, esto hace que el pie de página suba la pantalla, ya que la tabla ya no crea filas vacías, debido a que tiene un pie de página.
Entonces, ¿alguien sabe de una manera para bloquear el pie de página personalizado en la parte inferior de la pantalla o para hacer que el tableView cree filas vacías como solía hacer?
¡Gracias!
Gareth
Desafortunadamente, no creo que haya una manera fácil de hacer esto, aparte de algunos trucos de jerarquía de vistas. Cuando el contentSize de su UITableView es menor que el tamaño del cuadro, asigna la vista de pie de página a la vista propia y la posición manualmente. Cuando el contentSize de su UITableView es mayor que el tamaño del marco, utiliza viewForFooterInSection. Déjeme saber si esto no está claro o si desea ver un código de ejemplo sobre cómo hacer esto.
Tengo el mismo problema para el controlador uitableview. Resolví esto agregando view en la ventana y elimino este objeto en viewWillDisappear.