0

Lorsque vous tentez d'ajouter une table pour couvrir toute la vue d'un contrôleur de vue comme ceci:Table Ajouter à la vue du contrôleur de navigation ne marche pas programatically travail

func setConstraints(){ 

    self.view.addSubview(statisticsTable); 

    statisticsTable.leftAnchor.constraint(equalTo: self.view.leftAnchor).isActive = true; 
    statisticsTable.rightAnchor.constraint(equalTo: self.view.rightAnchor).isActive = true; 
    statisticsTable.bottomAnchor.constraint(equalTo: self.view.bottomAnchor).isActive = true; 
    statisticsTable.topAnchor.constraint(equalTo: self.view.topAnchor).isActive = true; 
} 

Le tableau d'affichage ne marche pas. Ai-je raison de supposer que par topAnchor dans le contexte d'un contrôleur de navigation, nous entendons la partie supérieure de la vue de controlleur de vue (où se termine la barre de navigation?). Cela semble assez simple, donc je manque clairement quelque chose d'évident ici. Je vous remercie.

Répondre

1

chaque fois que votre création d'une vue dans le code et tente d'ajouter des contraintes à ce point de vue, vous devez vous rappeler de définir les translatesAutoresizingMaskIntoConstraints

func setConstraints(){ 

    self.view.addSubview(statisticsTable); 
    // try to add this before you add your constraints to the view 
    statisticsTable.translatesAutoresizingMaskIntoConstraints = false 

    statisticsTable.leftAnchor.constraint(equalTo: self.view.leftAnchor).isActive = true; 
    statisticsTable.rightAnchor.constraint(equalTo: self.view.rightAnchor).isActive = true; 
    statisticsTable.bottomAnchor.constraint(equalTo: self.view.bottomAnchor).isActive = true; 
    statisticsTable.topAnchor.constraint(equalTo: self.view.topAnchor).isActive = true; 
} 
+0

bien sûr .... Je savais que je manque à l'évidence. désolé et merci –

+0

bienvenue. voyez si cela fonctionne pour que vous puissiez vérifier la question comme il se doit afin de pouvoir aider les autres aussi. –