3 votes

Faire en sorte que UITableView ignore la zone de sécurité

J'ai un TableView à l'intérieur d'un ViewController . J'ai fait le TableView à la vue SuperMargings (avec des contraintes) et a désactivé tous les éléments de l'image. SafeArea Options d'encastrement mais mon TableView est toujours sous le SafeArea quand je lance mon projet.

Comment puis-je faire de mon TableView aller à pleine hauteur sur les iPhones avec encoche ?

9voto

Grigory Serebryanyy Points 161

Si vous avez déjà épinglé tableView à sa vue supérieure (pas à safeArea ) avec des contraintes mais tableView respecte toujours safeArea il y a une propriété contentInsetAdjustmentBehavior en UIScrollView ( UITableView est une sous-classe de UIScrollView comme nous le savons) depuis iOS 11.

Cette propriété est UIScrollView.ContentInsetAdjustmentBehavior enum avec 4 options. Vous devez définir .never a contentInsetAdjustmentBehavior .

1voto

jalone Points 1227

Ce qui fonctionne avec tout consiste à associer la contrainte inférieure de la vue tableau à l'ancrage inférieur de la vue racine (ou parent) (au lieu de la SafeArea).

Cela peut être fait dans l'éditeur de storyboard en double-cliquant sur la contrainte dans l'inspecteur de droite et en changeant l'ancrage du premier élément de SafeArea à Superview (ou toute autre vue souhaitée).

Vous pouvez ensuite définir les insertions de bord à volonté si nécessaire (pour éviter que le contenu ne reste partiellement caché derrière les coins arrondis du cadre ou l'encoche si vous appliquez la même procédure à l'ancrage supérieur).

enter image description here

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X