ios uitableview interface-builder

ios - Espacio en blanco vacío encima de UITableView dentro de una UIView



interface-builder (7)

Estoy tratando de colocar un TableView dentro de mi vista de ViewController pero dejando un espacio de 44 entre la parte inferior de la barra de navegación y la parte superior de la tabla. Luego quería colocar un UITextField dentro de ese espacio para actuar como un encabezado estacionario. Por alguna razón, TableView tiene un espacio en blanco vacío sobre el inicio de las "Células de prototipo". Es solo un espacio en blanco. Esto es lo que parece en el guión gráfico.

Al ver la pantalla de la aplicación, así es como se ve:

Al desplazar la tabla, sube hasta el lugar correcto:


Acabo de encontrar una solución para esto. En mi caso, estaba usando TabBarViewController, A simplemente desmarque la opción ''Ajustar las configuraciones de la vista de desplazamiento''. Los problemas desaparecen.

https://i.stack.imgur.com/qgQI8.png


Intente buscar en el ''inspector de atributos'' (en el menú de la derecha) del ViewController de Participantes. Verifique la opción ''Extender bordes'' y desmarque ''Bajo las barras superiores'', y luego cambie su vista de tabla.

Otra posible solución es simplemente desmarcar la opción ''Ajustar las configuraciones de la vista de desplazamiento'' . El motivo es que cuando viewController extiende sus bordes, digamos debajo de la barra superior, el scrollView de tableView ajusta automáticamente su parte superior insertada, de modo que el contenido de tableView comience exactamente debajo de la barra superior. Pero en su caso, esto no es necesario, ya que su tableView comienza bajo la barra.

Céntrese en ViewController y llegue a la pestaña Inspector de atributos:


Mi problema es que configuro tableHeaderView como una nueva UIView como esta

self.tableHeaderView = UIView(frame: .zero)

Elimina esta línea, el problema se ha ido. Prueba esto:

//self.tableHeaderView = UIView(frame: .zero)


No debería necesitar cambiar la configuración predeterminada para extender bordes.

Parece que el problema real es una vista de encabezado de tabla en blanco en su guión gráfico. Se muestra en la captura de pantalla que proporcionó de su guión gráfico, justo debajo de la vista Introducir nombre y justo encima de la vista Células de prototipo. Bórralo.


Para gente de Objective-C, agrégalo a tu método ViewDidLoad.

[self.tableView setContentInset:UIEdgeInsetsMake(-20, 0, 0, 0)];


Prueba este:

self.tableView.contentInset = UIEdgeInsetsMake(-65, 0, 0, 0)


Solo agregue esto en su método ViewDidLoad

self.automaticallyAdjustsScrollViewInsets = NO;